#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 time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |