Submission #1195247

#TimeUsernameProblemLanguageResultExecution timeMemory
1195247nikulidVision Program (IOI19_vision)C++20
44 / 100
449 ms1868 KiB
#include "vision.h" #include <math.h> #include <vector> using namespace std; int dist(int a, int b, int w){ int ra, ca, rb, cb; ra = a%w; rb = b%w; ca = a/w; cb = b/w; return abs(ra-rb)+abs(ca-cb); } void construct_network(int H, int W, int K) { vector<int> ns; vector<int> bigns(0); int lastindex = H*W; // lemma 2: brute force is not sigma. int n=H*W; for(int i=0; i<n; i++){ ns = {i}; add_and(ns); // this is @ lastindex now :p ns.clear(); for(int j=0; j<n; j++){ if(j>i && dist(i,j,W)==K){ ns.push_back(j); } } if(ns.size()==0){ lastindex++; continue; } add_or(ns); // this is @ lastindex+1 :p ns.clear(); ns = {lastindex, lastindex+1}; add_and(ns); // this is @ lastindex+2 :P ns.clear(); bigns.push_back(lastindex+2); lastindex+=3; } add_or(bigns); }
#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...