Submission #291814

#TimeUsernameProblemLanguageResultExecution timeMemory
291814medmdgVision Program (IOI19_vision)C++14
46 / 100
10 ms1272 KiB
#include<bits/stdc++.h> #include "vision.h" using namespace std; void construct_network(int H, int W, int K){ vector<int> hori; vector<int> vert; int bh=H*W; int eh; for(int i=0;i<H;i++){ vector<int> al; for(int j=0;j<W;j++){ al.push_back(j+i*W); } eh=add_or(al); hori.push_back(eh); } int bv=eh+1; int ev; for(int i=0;i<W;i++){ vector<int> al; for(int j=i;j<H*W;j+=W){ al.push_back(j); } ev=add_or(al); vert.push_back(ev); } vector<int> dishori; vector<int> disvert; int end=ev; vector<int> OH; for(int i=bh;i<=eh;i++){ OH.push_back(i); } dishori.push_back(add_xor(OH)); vector<int> OV; for(int i=bv;i<=ev;i++){ OV.push_back(i); } disvert.push_back(add_xor(OV)); end+=2; for(int i=1;i<=min(H-1,K);i++){ vector<int> h; for(int j=bh;j<=eh-i;j++){ vector<int> hp; hp.push_back(j); hp.push_back(j+i); end=add_and(hp); h.push_back(end); } if(h.size()){ dishori.push_back(add_or(h)); end++; } } for(int i=1;i<=min(W-1,K);i++){ vector<int> h; for(int j=bv;j<=ev-i;j++){ vector<int> hp; hp.push_back(j); hp.push_back(j+i); end=add_and(hp); h.push_back(end); } if(h.size()){ disvert.push_back(add_or(h)); end++; } } int last; for(int i=0;i<=K;i++){ if(disvert.size()>i&&dishori.size()>K-i){ vector<int> f; f.push_back(disvert[i]); f.push_back(dishori[K-i]); last=(add_and(f)); } } vector<int> nb; for(int i=end+1;i<=last;i++){ nb.push_back(i); } last=add_or(nb); return; }

Compilation message (stderr)

vision.cpp: In function 'void construct_network(int, int, int)':
vision.cpp:71:26: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   71 |         if(disvert.size()>i&&dishori.size()>K-i){
      |            ~~~~~~~~~~~~~~^~
vision.cpp:71:44: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   71 |         if(disvert.size()>i&&dishori.size()>K-i){
      |                              ~~~~~~~~~~~~~~^~~~
vision.cpp:79:22: warning: 'last' may be used uninitialized in this function [-Wmaybe-uninitialized]
   79 |     for(int i=end+1;i<=last;i++){
      |                     ~^~~~~~
#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...