Submission #561840

#TimeUsernameProblemLanguageResultExecution timeMemory
561840StickfishRed-blue table (IZhO19_stones)C++17
100 / 100
45 ms1568 KiB
#include <iostream> #include <vector> using namespace std; pair<int, vector<vector<bool>>> solve_smalln(int n, int m) { int remilia = (n - 1) / 2; int flandre = m / 2 + 1; int rowcnt = 1ll * remilia * m / flandre; vector<vector<bool>> ans(n, vector<bool>(m, 0)); int currow = 0; for (int j = 0; j < m; ++j) { for (int t = 0; t < remilia; ++t) { ans[currow++][j] = 1; currow %= rowcnt; } } return {m + rowcnt, ans}; } void solve() { int n, m; cin >> n >> m; if (n <= m) { auto [cnt, ans] = solve_smalln(n, m); cout << cnt << '\n'; for (int i = 0; i < n; ++i) { for (int j = 0; j < m; ++j) { if (ans[i][j]) cout << '+'; else cout << '-'; } cout << '\n'; } } else { auto [cnt, ans] = solve_smalln(m, n); cout << cnt << '\n'; for (int i = 0; i < n; ++i) { for (int j = 0; j < m; ++j) { if (!ans[j][i]) cout << '+'; else cout << '-'; } cout << '\n'; } } } signed main() { int t; cin >> t; while (t--) { 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...