Submission #1204599

#TimeUsernameProblemLanguageResultExecution timeMemory
1204599aritro_Mosaic (IOI24_mosaic)C++20
8 / 100
80 ms11336 KiB
#include<bits/stdc++.h>
using namespace std;

vector<long long> mosaic(vector<int> x,vector<int> y,vector<int> t, vector<int> b,vector<int> l, vector<int> r){
    //subtask 5
    int n=x.size();
    int q=t.size();
    vector<long long> ans(q,0);
    for(int query=0;query<q;query++){
        if(r[query]==0||b[query]==0){
            ans[query]=0;
            continue;
        }
        bool f1=0,f2=0;
        if(t[query]==0){
            t[query]++;
            f1=1;
        }
        if(l[query]==0){
            l[query]++;
            f2=1;
        }
        long long cnt=(1LL*(r[query]-l[query]+1))*(1LL*(b[query]-t[query]+1));
        ans[query]=cnt/2;
        if(cnt%2==1){
            if((t[query]%2)==(l[query]%2)) ans[query]++;
        }
        if(f1) t[query]--;
        if(f2) l[query]--;
    }
    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...