Submission #1242931

#TimeUsernameProblemLanguageResultExecution timeMemory
1242931ericl23302Mosaic (IOI24_mosaic)C++20
8 / 100
74 ms11336 KiB
#include "mosaic.h"
#include <bits/stdc++.h>

using namespace std;

typedef long long ll;

std::vector<long long> mosaic(std::vector<int> X, std::vector<int> Y, std::vector<int> T, std::vector<int> B, std::vector<int> L, std::vector<int> R) {
    int Q = (int)T.size();
    std::vector<long long> C(Q, 0);
    
    int n = X.size();
    if (n == 1) return vector<ll>(Q, X[0]);

    for (int i = 0; i < Q; ++i) {
        int t = T[i], b = B[i], l = L[i], r = R[i];
        if (!t) ++t;
        if (!l) ++l;

        ll area = (ll)(b - t + 1) * (r - l + 1);
        if (area % 2) C[i] = area / 2 + ((t + l) % 2 == 0 ? 1 : 0);
        else C[i] = area / 2;
    }

    return C;
}
#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...