제출 #501708

#제출 시각아이디문제언어결과실행 시간메모리
501708MazaalaiRed-blue table (IZhO19_stones)C++17
0 / 100
22 ms1248 KiB
#include <bits/stdc++.h> using namespace std; string s = "+-"; void go() { int n, m; cin >> n >> m; if (n == 1) { cout << m << '\n'; for (int i = 0; i < m; i++) cout << s[1]; cout << '\n'; return; } if (m == 1) { cout << n << '\n'; for (int i = 0; i < m; i++) cout << s[0] << '\n'; return; } if (n == 2) { cout << m << '\n'; for (int i = 0; i < m; i++) cout << s[1]; cout << '\n'; for (int i = 0; i < m; i++) cout << s[1]; cout << '\n'; return; } if (m == 2) { cout << n << '\n'; for (int i = 0; i < m; i++) cout << s[0] << s[0] << '\n'; return; } if (n & 1 && m & 1) { cout << n+m-2 << '\n'; for (int i = 1; i <= n; i++) { for (int j = 1; j <= m; j++) { if (i == n) cout << s[1]; else if (j == m) cout << s[0]; else cout << s[(i+j)%2]; } cout << '\n'; } return; } if (n % 2 == 0 && m % 2 == 0) { cout << n+m-4 << '\n'; for (int i = 1; i <= n; i++) { for (int j = 1; j <= m; j++) { if (i == n || i == n-1) cout << s[1]; else if (j == m || j == m-1) cout << s[0]; else cout << s[(i+j)%2]; } cout << '\n'; } return; } } signed main() { ios::sync_with_stdio(0); cin.tie(); cout.tie(); // freopen("in.txt", "r", stdin); // freopen("out.txt", "w", stdout); int T; cin >> T; while(T--) go(); }
#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...