Submission #1202718

#TimeUsernameProblemLanguageResultExecution timeMemory
1202718cpdreamerVision Program (IOI19_vision)C++20
0 / 100
6 ms1216 KiB
#include "vision.h" #include <bits/stdc++.h> using namespace std; #define V vector #define pb push_back int h,w; int cell(int i,int j){ return w*i+j; } int f(int k){ return h*w+k-1; } V<int>pos; void construct_network(int H, int W, int K) { h=H,w=W; for(int i=0;i<H;i++){ V<int>vp; for(int j=0;j<W;j++){ vp.pb(cell(i,j)); } add_or(vp); } for(int i=0;i<W;i++){ V<int>vp; for(int j=0;j<H;j++){ vp.pb(cell(j,i)); } add_or(vp); } for(int i=0;i<=K;i++){ V<int>vp; int row=-1,col=-1; for(int j=1;j+i<=H;j++){ int x=add_and({f(j),f(j+i)}); vp.pb(x); } if(vp.empty()){ continue; } row=add_or(vp); vp.clear(); for(int j=1;j+K-i<=W;j++){ int x=add_and({f(H+j),f(H+j+K-i)}); vp.pb(x); } if(vp.empty()){ continue; } col=add_or(vp); int y=add_and({col,row}); pos.pb(y); } if(!pos.empty()) { add_or(pos); } else{ int x=add_not(0); int y=add_xor({0,x}); add_not(y); } }
#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...