Submission #294737

#TimeUsernameProblemLanguageResultExecution timeMemory
294737phillipVision Program (IOI19_vision)C++14
12 / 100
1 ms384 KiB
#include "vision.h" #include <bits/stdc++.h> #define ll long long #define fast cin.tie(0);cout.tie(0); #define order ios::sync_with_stdio(0);ios_base::sync_with_stdio(0); #define pb push_back using namespace std; vector<int> q; int cur,k,h,w; void check(int x,int y) { vector<int>qq; for(int i=0;i<=k;i++) { int j=k-i; if(j+y>=w||i+x>=h)continue; qq.push_back((i+x)*w+j); } add_or(qq); cur++; add_and({cur-1,x*w+y}); q.push_back(cur); cur++; } void construct_network(int hh, int ww, int kk) { w=ww;h=hh;k=kk; cur=h*w; if(min(h,w)==1){ int mx=max(h,w); for(int i=0;i<mx-k;i++) { add_and({i,i+k}); q.push_back(mx+i); } add_or(q); return; } else if(max(h,w)<=3) { for(int i=0;i<h;i++) { for(int j=0;j<w;j++) { check(i,j); } } } else { for(int i=0;i<=k;i++) { int j=k-i; if(j>=w||i>=h)continue; q.push_back(i*w+j); } add_or(q); } }
#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...