Submission #1238661

#TimeUsernameProblemLanguageResultExecution timeMemory
1238661ricardsjansonsMosaic (IOI24_mosaic)C++20
0 / 100
304 ms36448 KiB
#include "mosaic.h"
#include <bits/stdc++.h>
#define ll long long
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){
    int n=x.size();
    int q=t.size();
    map<pair<int,int>,int>m;
    if(n>1){
        int p=y[1];
        for(int i=1;i<n;i++){
            m[{i,1}]=p=(p==0&&x[i]==0);
        }
        p=x[1];
        for(int i=1;i<n;i++){
            m[{1,i}]=p=(p==0&&y[i]==0);
        }
    }
    vector<ll>c(q, 0);
    for(int i=0;i<q;i++){
        if(t[i]==0){
            c[i]=x[l[i]];
            continue;
        }
        if(l[i]==0){
            c[i]=y[t[i]];
            continue;
        }
        int a=min(t[i],l[i]);
        c[i]=m[{t[i]-a+1,l[i]-a+1}];
    }
    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...