Submission #157898

#TimeUsernameProblemLanguageResultExecution timeMemory
157898mrboorgerRed-blue table (IZhO19_stones)C++14
11 / 100
31 ms2808 KiB
#include <bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> #define pb push_back #define F first #define S second #define ll long long #define ld long double #define sqr(x) (x) * (x) //#define all(a) a.begin(), a.end() using namespace std; using namespace __gnu_pbds; //typedef tree< //pair <int, int>, //null_type, //greater<pair <int, int>>, //rb_tree_tag, //tree_order_statistics_node_update> //ordered_set; const int maxn = 1002; char a[maxn][maxn], b[maxn][maxn]; int main() { #ifdef LOCAL freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); #endif // LOCAL ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int t; cin >> t; for(int ii = 0; ii < t; ++ii) { int n, m; cin >> n >> m; bool f = false; if (n > m) { swap(n, m); f = true; } int ans = 0; for(int i = n / 2 + 1; i < n; ++i) { for(int j = 0; j <= m / 2; ++j) a[i][j] = '+'; for(int j = m / 2 + 1; j < m; ++j) a[i][j] = '-'; } for(int j = 0; j < m; ++j) a[n / 2][j] = '-'; for(int i = 0; i < n / 2; ++i) { for(int j = 0; j < m / 2; ++j) a[i][j] = '-'; for(int j = m / 2; j < m; ++j) a[i][j] = '+'; } ans = max(m - 1 + n / 2 + n / 2, m); cout << ans << '\n'; if (f) { for(int i = 0; i < n; ++i) for(int j = 0; j < m; ++j) b[i][j] = a[i][j]; swap(n, m); for(int i = 0; i < n; ++i) for(int j = 0; j < m; ++j) { if (b[j][i] == '-') a[i][j] = '+'; else a[i][j] = '-'; } } for(int i = 0; i < n; ++i) { for(int j = 0; j < m; ++j) cout << a[i][j]; cout << '\n'; } } 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...