Submission #1272165

#TimeUsernameProblemLanguageResultExecution timeMemory
1272165StefanSebezPainting Walls (APIO20_paint)C++20
0 / 100
8 ms1340 KiB
#include "paint.h" #include <bits/stdc++.h> using namespace std; #define fi first #define se second #define pb push_back #define ll long long #define ld long double const int N=1e5+50; int n,m,K; bool desno[N]; bool imac[210][510]; int minimumInstructions(int n1,int m1,int K1,vector<int>C,vector<int>A,vector<vector<int>>colors) { n=n1,m=m1,K=K1; for(int i=0;i<m;i++){ sort(colors[i].begin(),colors[i].end()); } for(int i=0;i<m;i++){ for(auto j:colors[i]) imac[i][j]=true; } for(int x=0;x<m;x++){ for(int y=0;y<=n-m;y++){ //printf("%i %i\n",x,y); bool moze=true; for(int l=0;l<m;l++){ /*int lb=lower_bound(colors[(x+l)%m].begin(),colors[(x+l)%m].end(),C[y+l])-colors[(x+l)%m].begin(); if(!(lb<colors[(x+l)%m].size()&&colors[(x+l)%m][lb]==C[y+l])){ moze=false; }*/ if(!imac[(x+l)%m][C[y+l]]){moze=false;break;} } if(moze) desno[y]=true; } } //for(int i=0;i<n;i++) cout<<desno[i]<<" ";cout<<endl; int res=0; for(int i=0;i<n;res++){ //printf("%i ",i); if(!desno[i]){res=-1;break;} int ind=i+m; for(int j=i+m;j>=i+1;j--){ if(desno[j]){ind=j;break;} } i=ind; } return res; }
#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...