Submission #683437

#TimeUsernameProblemLanguageResultExecution timeMemory
683437NotLinuxRed-blue table (IZhO19_stones)C++17
100 / 100
42 ms2332 KiB
#include<bits/stdc++.h>
using namespace std;
#define int long long
 
vector < vector < char > > arr(1005 , vector < char > (1005));
 
void solve(){
    bool bl = 0;
    int n, m;
    cin>>n>>m;
    
    if(n > m){
        swap(n, m); 
        bl = 1;
    }
    
    for(int i = 1; i <= n; i++){
            for(int j = 1; j <= m; j++){
                            arr[i][j] = (bl ? '+' : '-');
                    }
        }
    cout<<max(n, m) + min(min(n, m), (min(n, m) / 2 - !(min(n, m) & 1)) * max(n, m) / (max(n, m) / 2 + 1))<<"\n";
    
    for(int i = 1, last = 1; i <= min(min(n, m), (min(n, m) / 2 - !(min(n, m) & 1)) * max(n, m) / (max(n, m) / 2 + 1)); i++){
        for(int j = 1; j <= m / 2 + 1; j++, last++){
            if(last == m + 1)last = 1;
            arr[i][last] = (bl ? '-' : '+');
        }
    }
    
    if(bl == 0){
        for(int i = 1; i <= n; i++){
            for(int j = 1; j <= m; j++)
                cout<<arr[i][j];
            cout<<"\n";
        }
    }
    else{
        for(int i = 1; i <= m; i++){
            for(int j = 1; j <= n; j++)
                cout<<arr[j][i];
            cout<<"\n";
        }
    }
    cout<<"\n";
}
 
signed main(){
    int tt = 1;
    cin>>tt;
    while(tt--)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...