#include <bits/stdc++.h>
using namespace std;
int const MAX=1005;
int n,m;
bool mat[MAX][MAX];
void solve(){
int i,j;
if(n<=m){
int add=(n-1)/2*m/(m/2+1);
cout<<add+m<<'\n';
int col=m;
for(i=1;i<=n;++i){
for(j=1;j<=m;++j)
mat[i][j]=0;
if(i<=add){
for(j=1;j<=m/2+1;++j){
col=col%m+1;
mat[i][col]=1;
}
}
for(j=1;j<=m;++j)
if(mat[i][j])
cout<<'+';
else
cout<<'-';
cout<<'\n';
}
}
else{
int add=(m-1)/2*n/(n/2+1);
cout<<add+n<<'\n';
int lin=n;
for(j=1;j<=m;++j){
for(i=1;i<=n;++i)
mat[i][j]=1;
if(j<=add){
for(i=1;i<=n/2+1;++i){
lin=lin%n+1;
mat[lin][j]=0;
}
}
}
for(i=1;i<=n;++i){
for(j=1;j<=m;++j)
if(mat[i][j])
cout<<'+';
else
cout<<'-';
cout<<'\n';
}
}
}
int main()
{
int tests;
cin>>tests;
while(tests--){
cin>>n>>m;
solve();
}
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |