# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
853875 | 2023-09-25T11:38:13 Z | Trisanu_Das | Red-blue table (IZhO19_stones) | C++17 | 0 ms | 0 KB |
#include <bits/stdc++.h> using namespace std; int main(){ int t; cin >> t; while(t){ int n, m; cin >> n >> m; char swapped = false; if(n < m){ m ^= n ^= m ^= n; swapped = true; } char b[n][m]; for(int i = 0; i < n; i++) for(int y = 0; y < m; y++) b[i][y] = '+'; int ans = n; int c = 0, x = 0; for(int i = 0; i < (m - 1) / 2; i++){ for(int y = 0; y < n; y++){ b[y][x] = '-'; c++; if(c == n / 2 + 1){ x++; c = 0; ans++; } } } cout << ans << '\n'; if(!swapped){ for(int y = 0; y < n; y++){ for(int x = 0; x < m; x++) cout << b[y][x]; cout << '\n'; } } else{ for(int y = 0; y < m; y++){ for(int x = 0; x < n; x++) cout << (b[x][y] == '+' ? '-' : '+'); cout << '\n'; } } k--; } }