Submission #501711

#TimeUsernameProblemLanguageResultExecution timeMemory
501711enerelt14Red-blue table (IZhO19_stones)C++17
11 / 100
35 ms1248 KiB
#include<bits/stdc++.h>
using namespace std;
int n, m;
void solve(){
	cin>>n>>m;
	if (n==1){
		cout<<m<<"\n";
		for (int i=1;i<=m;i++)cout<<"-";
		cout<<"\n";
		return;
	}
	if (m==1){
		cout<<n<<"\n";
		for (int i=1;i<=n;i++)cout<<"+\n";
		return;	
	}
	if (n==2){
		cout<<m<<"\n";
		for (int i=1;i<=2;i++){
			for (int j=1;j<=m;j++){
				cout<<"-";
			}
			cout<<"\n";
		}
		return;
	}
	if (m==2){
		cout<<n<<"\n";
		for (int i=1;i<=n;i++){
			for (int j=1;j<=2;j++){
				cout<<"+";
			}
			cout<<"\n";
		}
		return;
	}
	if (n%2==1 && m%2==1){
		cout<<n+m-2<<"\n";
		for (int i=1;i<=n;i++){
			for (int j=1;j<=m;j++){
				if (i!=n && j!=m){
					if ((i+j)%2==1)cout<<"-";
					else cout<<"+";
					continue;
				}
				if (i==n)cout<<"-";
				else cout<<"+";
			}
			cout<<"\n";
		}
	}
}
int main(){
	int t;
	cin>>t;
	while(t--){
		solve();
	}
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...