Submission #1230776

#TimeUsernameProblemLanguageResultExecution timeMemory
1230776KindaNamelessRed-blue table (IZhO19_stones)C++20
0 / 100
15 ms1352 KiB
#include <bits/stdc++.h>
using namespace std;

#define ll long long
#define ld long double

void solve() {
    int N, M; cin >> N >> M;

    vector<vector<char>> A(N, vector<char>(M, '+'));

    bool rot = 0;
    if(N < M) {
        swap(N, M);
        rot = 1;
    }

    int r = 0, c = 0, cnt = 0, answer = N;
    for(int _ = 1; _ <= (N / 2 + 1) * ((M + 1) / 2); ++_) {
        if(rot) {
            A[c][r] = '-';
        }
        else {
            A[r][c] = '-';
        }
        cnt++;
        if(cnt >= N / 2 + 1) {
            cnt = 0;
            c++;
            answer++;
        }
        r++;
        if(r >= N)r = 0;
    }

    cout << answer << "\n";

    if(rot) {
        for(int i = 0; i < M; ++i) {
            for(int j = 0; j < N; ++j) {
                cout << (A[i][j] == '+' ? '-' : '+');
            }
            cout << "\n";
        }
        return;
    }

    for(int i = 0; i < N; ++i) {
        for(int j = 0; j < M; ++j) {
            cout << A[i][j];
        }
        cout << "\n";
    }
}

int main() {
    ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);

    int tc = 1; cin >> tc;

    while(tc--) {
        solve();
    }

    return 0;
}
#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...