Submission #681757

#TimeUsernameProblemLanguageResultExecution timeMemory
681757SnoTRed-blue table (IZhO19_stones)C++14
100 / 100
43 ms3164 KiB
#include <bits/stdc++.h>
using namespace std;
#define pb push_back
#define ll long long
#define ull unsigned long long
#define ssort sort(s.begin(),s.end());
#define sreverse reverse(s.begin(),s.end());
#define sclear s.clear();
#define ssize s.size();
#define ld long double
#define F first
#define S second
#define REP(i,a,b) for (int i = a; i <= b; i++)
#define sq(a) (a)*(a)
/*void fopn(string name){
	freopen((name+".in").c_str(),"r",stdin);
	freopen((name+".out").c_str(),"w",stdout);
}*/
ll a,b,c,e,d,f,k,g,h,r,i,j,x,y,z,m,n,l,t,p,s,u,sum,ans,mod=1e18;
char arr[2000][2000];
int main(){
	ios::sync_with_stdio(0);
    cin.tie(0);
    cin>>a;
    for(i=1;i<=a;i++)
    {
    	r=0;
    	cin>>n>>m;
    	if(n==1&&m==1){
    		cout<<1<<endl<<'+'<<endl; continue;
		}
		if(n>m){
			swap(n,m); r=1; //swapped
			
	}
	    for(j=1;j<=n;j++){
		    for(k=1;k<=m;k++){
			    if(r) arr[j][k]='+';
			    else arr[j][k]='-';
		}
	}
	l=min(n,(n/2-!(n%2))*m/(m/2+1));
	cout<<m+l<<endl; 
	for(j=1,h=1;j<= l ;j++){
		for(k=1;k<=m/2+1;k++,h++)
		{
			if(h>m) h=1;
			if(r) arr[j][h]='-';
			else  arr[j][h]='+';

		}
	}
	if(!r){
		
	for(j=1;j<=n;j++)
	{
		for(k=1;k<=m;k++)
		{
			cout<<arr[j][k];
		}
		cout<<endl;
	}
	}
	else{
	
	for(j=1;j<=m;j++)
	{
		for(k=1;k<=n;k++)
		{
			cout<<arr[k][j];
		}
		cout<<endl;
	}
}
}
}
#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...