답안 #286864

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
286864 2020-08-31T05:57:10 Z dvdg6566 Red-blue table (IZhO19_stones) C++14
11 / 100
31 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 main(){
	ios_base::sync_with_stdio(0);cin.tie(0);
	cin>>T;
	while(T--){
		cin>>R>>C;
		

		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;
		}
		if(R%2==1&&C%2==1){
			cout<<R+C-2<<'\n';

			for(int i=0;i<C;++i)cout<<'-';cout<<'\n';
			int h=C/2;
			for(int i=1;i<R;++i){
				if(i%2==1){
					cout<<'+';
					for(int k=0;k<h;++k)cout<<'+';
					for(int k=0;k<h;++k)cout<<'-';
				}else{
					cout<<'+';
					for(int k=0;k<h;++k)cout<<'-';
					for(int k=0;k<h;++k)cout<<'+';
				}
				cout<<'\n';
			}
		}else if(R%2==0&&C%2==0){
			cout<<R+C-3<<'\n';

			int h=C/2;
			int perow=(R-2)/2;
			int tar=C-3;
			int cur=0;
			for(int i=0;i<R;++i){
				for(int ww=0;ww<perow;++ww){
					A[i][cur] = 1;
					++cur;
					cur%=tar;
				}
			}
			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:29:4: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
   29 |    for(int i=0;i<C;++i)cout<<'-';cout<<'\n';
      |    ^~~
stones.cpp:29:34: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
   29 |    for(int i=0;i<C;++i)cout<<'-';cout<<'\n';
      |                                  ^~~~
stones.cpp:39:4: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
   39 |    for(int i=0;i<C;++i)cout<<'-';cout<<'\n';
      |    ^~~
stones.cpp:39:34: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
   39 |    for(int i=0;i<C;++i)cout<<'-';cout<<'\n';
      |                                  ^~~~
stones.cpp:56:8: warning: unused variable 'h' [-Wunused-variable]
   56 |    int h=C/2;
      |        ^
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 384 KB Output is correct
2 Incorrect 0 ms 384 KB in the table A+B is not equal to 3
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 512 KB in the table A+B is not equal to 19
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 384 KB Output is correct
2 Incorrect 0 ms 384 KB in the table A+B is not equal to 3
# 결과 실행 시간 메모리 Grader output
1 Correct 30 ms 1400 KB Output is correct
2 Correct 28 ms 1280 KB Output is correct
3 Correct 25 ms 1152 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Incorrect 31 ms 2048 KB in the table A+B is not equal to 45
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 384 KB Output is correct
2 Incorrect 0 ms 384 KB in the table A+B is not equal to 3