Submission #370368

#TimeUsernameProblemLanguageResultExecution timeMemory
370368MilosMilutinovicVision Program (IOI19_vision)C++14
0 / 100
59 ms5992 KiB
#include <bits/stdc++.h> #include "vision.h" using namespace std; #define pb push_back int check(int H,int W,int K){ int sz=H+W-2; vector<int> x[sz+1],y[sz+1]; for(int i=0;i<=sz;i++)x[i].clear(),y[i].clear(); for(int i=0;i<H;i++){ for(int j=0;j<W;j++){ x[i+j].pb(i*W+j); y[i+W-j-1].pb(i*W+j); } } vector<int> d[5]; for(int i=0;i<=sz;i++){ d[0].pb(add_or(x[i])); d[1].pb(add_or(y[i])); d[2].pb(add_or(d[0])); d[3].pb(add_or(d[1])); if(i>K){ d[4].pb(add_and({d[0][i],d[2][i-K]})); d[4].pb(add_and({d[1][i],d[3][i-K]})); } } return add_or(d[4]); } void construct_network(int H,int W,int K){ if(H+W-2==K)check(H,W,K); else{ add_xor({check(H,W,K),check(H,W,K+1)}); } }
#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...