Submission #166938

#TimeUsernameProblemLanguageResultExecution timeMemory
166938cfalasVision Program (IOI19_vision)C++14
44 / 100
323 ms26100 KiB
#include "vision.h" #include<bits/stdc++.h> using namespace std; typedef pair<int, int> ii; #define mp(a,b) ii(min(a, b), max(a, b)) void construct_network(int H, int W, int K) { std::vector<int> Ns; map<ii, bool> used; for(int x1=0;x1<W;x1++){ for(int y1=0;y1<H;y1++){ //cout<<endl<<x1+W*y1<<": \n"; int origx=K+x1, origy=y1; vector<int> possiblexy; for(int i=0;i<K;i++){ //cout<<origx+origy*W<<" "; if(origx<W && origx>=0 && origy<H && origy>=0){ if(!used[mp(origx+origy*W, y1*W+x1)] && !used[mp(y1*W+x1, origx+origy*W)]){ used[mp(origx+origy*W, y1*W+x1)] = true; used[mp(y1*W+x1, origx+origy*W)] = true; possiblexy.push_back(origx+origy*W); } } origy++; origx--; } for(int i=0;i<K;i++){ //cout<<origx+origy*W<<" "; if(origx<W && origx>=0 && origy<H && origy>=0){ if(!used[mp(origx+origy*W, y1*W+x1)] && !used[mp(y1*W+x1, origx+origy*W)]){ used[mp(origx+origy*W, y1*W+x1)] = true; used[mp(y1*W+x1, origx+origy*W)] = true; possiblexy.push_back(origx+origy*W); } } origy--; origx--; } for(int i=0;i<K;i++){ //cout<<origx+origy*W<<" "; if(origx<W && origx>=0 && origy<H && origy>=0){ if(!used[mp(origx+origy*W, y1*W+x1)] && !used[mp(y1*W+x1, origx+origy*W)]){ used[mp(origx+origy*W, y1*W+x1)] = true; used[mp(y1*W+x1, origx+origy*W)] = true; possiblexy.push_back(origx+origy*W); } } origy--; origx++; } for(int i=0;i<K;i++){ //cout<<origx+origy*W<<" "; if(origx<W && origx>=0 && origy<H && origy>=0){ if(!used[mp(origx+origy*W, y1*W+x1)] && !used[mp(y1*W+x1, origx+origy*W)]){ used[mp(origx+origy*W, y1*W+x1)] = true; used[mp(y1*W+x1, origx+origy*W)] = true; possiblexy.push_back(origx+origy*W); } } origy++; origx++; } int a; if(possiblexy.size()>1) a = add_or(possiblexy); else if(possiblexy.size()==1) a = possiblexy[0]; else continue; vector<int> v; v.push_back(y1*W + x1); v.push_back(a); Ns.push_back(add_and(v)); } } int a = add_or(Ns); }

Compilation message (stderr)

vision.cpp: In function 'void construct_network(int, int, int)':
vision.cpp:74:6: warning: unused variable 'a' [-Wunused-variable]
  int a = add_or(Ns);
      ^
#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...