Submission #1211466

#TimeUsernameProblemLanguageResultExecution timeMemory
1211466sula2모자이크 (IOI24_mosaic)C++20
0 / 100
1000 ms2162688 KiB
#include <bits/stdc++.h> #define all(a) a.begin(), a.end() #define popcount(x) __builtin_popcountll(x) using namespace std; using namespace chrono; vector<long long> mosaic( vector<int> X, vector<int> Y, vector<int> T, vector<int> B, vector<int> L, vector<int> R ) { int n = X.size(); int q = T.size(); int a[n][n]; for (int i = 0; i < n; i++) { a[0][i] = X[i]; a[i][0] = Y[i]; } for (int i = 1; i < n; i++) { for (int j = 1; j < n; j++) { a[i][j] = a[i-1][j] == 0 && a[i][j-1] == 0; } } for (auto& r : a) { for (auto& x : r) cout << x << " "; cout << "\n"; } vector<long long> ans(q); for (int i = 0; i < q; i++) { int r1 = T[i]; int c1 = L[i]; int r2 = B[i]; int c2 = R[i]; if (r1 == 0) r1++; if (c1 == 0) c1++; if (r1 > r2 || c1 > c2) { ans[i] = 0; continue; } long long area = max(0LL, 1LL*(r2 - r1 + 1)*(c2 - c1 + 1)); ans[i] = area/2; if (r1 % 2 == c1 % 2 && area % 2) ans[i]++; } return ans; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...