Submission #617751

#TimeUsernameProblemLanguageResultExecution timeMemory
617751lorenzoferrariVision Program (IOI19_vision)C++17
0 / 100
11 ms1172 KiB
#include "vision.h" #include <vector> #include <cassert> using namespace std; void construct_network(int h, int w, int k) { int fid; int tid; { int t = add_not(0); tid = add_or({0, t}); fid = add_xor({0,0}); } vector<int> rows(h); vector<int> cols(w); for (int i = 0; i < h; ++i) { vector<int> q; for (int j = 0; j < w; ++j) { q.push_back(i*w + j); } rows[i] = add_or(q); } for (int j = 0; j < w; ++j) { vector<int> q; for (int i = 0; i < h; ++i) { q.push_back(i*w + j); } cols[j] = add_or(q); } auto add_fixed = [&](vector<int> q, int d) -> int { assert(d > 0); vector<int> tor; for (int i = 0; i + d < (int)q.size(); ++i) { vector<int> qq{q[i], q[i+d]}; tor.push_back(add_and(qq)); } if (tor.empty()) return fid; return add_or(tor); }; vector<int> dh(k+1); vector<int> dw(k+1); for (int i = 1; i <= k; ++i) { dh[i] = add_fixed(rows, i); dw[i] = add_fixed(cols, i); } vector<int> nh(k); vector<int> nw(k); for (int i = 1; i <= k; ++i) { nh[i-1] = add_not(dh[i]); nw[i-1] = add_not(dw[i]); } dh[0] = add_and(nh); dw[0] = add_and(nw); vector<int> tor; for (int i = 0; i <= k; ++i) { vector<int> q{dh[i], dw[k - i]}; tor.push_back(add_and(q)); } add_or(tor); }

Compilation message (stderr)

vision.cpp: In function 'void construct_network(int, int, int)':
vision.cpp:10:9: warning: variable 'tid' set but not used [-Wunused-but-set-variable]
   10 |     int tid;
      |         ^~~
#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...