Submission #1094244

#TimeUsernameProblemLanguageResultExecution timeMemory
1094244MuhammetRed-blue table (IZhO19_stones)C++17
0 / 100
22 ms1484 KiB
#include <bits/stdc++.h> using namespace std; vector <vector <char>> a; int main(){ ios::sync_with_stdio(false); cin.tie(nullptr); int T; cin >> T; while(T--){ int n, m; cin >> n >> m; if(n >= m){ a.assign(n, vector <char> (m,'+')); vector <int> vis(n,0), v; int x = 0; for(int j = 0; j < m; j++){ int cnt = (n/2 + 1); v.clear(); while(cnt--){ v.push_back(x); // cout << x << " "; x++; x %= n; } // cout << '\n'; bool tr = 0; // cout << (int)v.size() << ' '; for(int i = 0; i < (int)v.size(); i++){ vis[v[i]]++; // cout << i << " "; if(vis[v[i]] > (m-(m/2 + 1))) tr = 1; break; } // cout << "\n"; if(tr == 1){ break; } for(int i = 0; i < (int)v.size(); i++){ a[v[i]][j] = '-'; } } } else { a.assign(n, vector <char> (m,'-')); vector <int> vis(m,0), v; int x = 0; for(int j = 0; j < n; j++){ int cnt = (m/2 + 1); v.clear(); while(cnt--){ v.push_back(x); x++; x %= m; } bool tr = 0; for(auto i : v){ vis[i]++; if(vis[i] > (n-(n/2 + 1))) tr = 1; break; } if(tr == 1) break; for(auto i : v){ a[j][i] = '+'; } } } int ans = 0; for(int i = 0; i < n; i++){ int a1 = 0, b1 = 0; for(int j = 0; j < m; j++){ if(a[i][j] == '+') a1++; else b1++; } ans += (a1 > b1); } for(int j = 0; j < m; j++){ int a1 = 0, b1 = 0; for(int i = 0; i < n; i++){ if(a[i][j] == '+') a1++; else b1++; } ans += (b1 > a1); } cout << ans << '\n'; for(int i = 0; i < n; i++){ for(int j = 0; j < m; j++){ cout << a[i][j]; } cout << '\n'; } } }

Compilation message (stderr)

stones.cpp: In function 'int main()':
stones.cpp:33:6: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
   33 |      if(vis[v[i]] > (m-(m/2 + 1))) tr = 1; break;
      |      ^~
stones.cpp:33:44: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
   33 |      if(vis[v[i]] > (m-(m/2 + 1))) tr = 1; break;
      |                                            ^~~~~
stones.cpp:59:6: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
   59 |      if(vis[i] > (n-(n/2 + 1))) tr = 1; break;
      |      ^~
stones.cpp:59:41: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
   59 |      if(vis[i] > (n-(n/2 + 1))) tr = 1; break;
      |                                         ^~~~~
#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...