답안 #286876

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
286876 2020-08-31T06:09:52 Z dvdg6566 Red-blue table (IZhO19_stones) C++14
0 / 100
40 ms 2048 KB
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<ll,ll> pi;
typedef vector<ll> vi;
typedef vector<pi> vpi;
#define pb emplace_back
#define mp make_pair
#define f first
#define s second
#define SZ(x) (int)x.size()
#define ALL(x) x.begin(),x.end()
#define lb lower_bound
const int MAXN=1001;
const ll MOD=998244353;

ll A[MAXN][MAXN];
ll R,C,T;

int eval(){
	int ans=0;
	for(int i=0;i<R;++i){
		int colp=0;
		for(int j=0;j<C;++j)if(A[i][j]==0)++colp;
		if(colp*2 > C)++ans;
	}
	for(int i=0;i<C;++i){
		int colc=0;
		for(int j=0;j<R;++j)if(A[j][i])++colc;
		if(colc*2>R)++ans;
	}
	return ans;
}

int main(){
	ios_base::sync_with_stdio(0);cin.tie(0);
	cin>>T;
	while(T--){
		cin>>R>>C;
		
		for(int i=0;i<R;++i)for(int j=0;j<C;++j)A[i][j]=0;
		if(R==1){
			cout<<C<<'\n';
			for(int i=0;i<C;++i)cout<<'-';cout<<'\n';
			continue;
		}else if(C==1){
			cout<<R<<'\n';
			for(int i=0;i<R;++i){cout<<'+';cout<<'\n';}
			continue;
		}
			
		int perow=(C-2)/2;
		int tar= R*((C/2)-1);

		tar /= (R/2+1);

		int cur=0;
		for(int i=0;i<R;++i){
			for(int ww=0;ww<perow;++ww){
				A[i][cur] = 1;
				++cur;
				cur%=tar;
			}
		}
		// assert(eval()+4>=R+C);
		cout<<eval()<<'\n';
		// break;
		for(int i=0;i<R;++i){
			for(int j=0;j<C;++j){
				if(A[i][j])cout<<'-';
				else cout<<'+';
			}
			cout<<'\n';
			
		}
		// return 0;
	}	
}

Compilation message

stones.cpp: In function 'int main()':
stones.cpp:44:4: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
   44 |    for(int i=0;i<C;++i)cout<<'-';cout<<'\n';
      |    ^~~
stones.cpp:44:34: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
   44 |    for(int i=0;i<C;++i)cout<<'-';cout<<'\n';
      |                                  ^~~~
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 384 KB Wrong answer in test 3 3: 3 < 4
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 512 KB Wrong answer in test 3 45: 34 < 46
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 384 KB Wrong answer in test 3 3: 3 < 4
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 40 ms 1916 KB Wrong answer in test 97 21: 114 < 116
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 36 ms 2048 KB Wrong answer in test 19 19: 34 < 36
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 384 KB Wrong answer in test 3 3: 3 < 4
2 Halted 0 ms 0 KB -