Submission #170733

#TimeUsernameProblemLanguageResultExecution timeMemory
170733DanGolovRed-blue table (IZhO19_stones)C++17
27 / 100
44 ms1512 KiB
#include <iostream>
#include <vector>

using namespace std;

namespace Solution {

    char field[1013][1013];

    void solve() {
        int n, m;
        cin >> n >> m;
        char start = (n > m ? '+' : '-');
        for (int i = 0; i < n; i++) fill(field[i], field[i] + m, start);
        int ans = 0;
        if (start == '+') {
            for (int i = 0; i < m / 2 - (m % 2 == 0); i++) {
                for (int j = 0; j < n / 2 + 1; j++) {
                    field[j][i] = '-';
                }
            }
            ans = n + m / 2 - (m % 2 == 0);
        } else {
            for (int i = 0; i < n / 2 - (n % 2 == 0); i++) {
                for (int j = 0; j < m / 2 + 1; j++) {
                    field[i][j] = '+';
                }
            }
            ans = m + n / 2 - (n % 2 == 0);
        }
        cout << ans << '\n';
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < m; j++) {
                cout << field[i][j];
            }
            cout << '\n';
        }
    }

}


int main() {
    int t;
    cin >> t;
    while (t--) {
        Solution::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...