Submission #1050532

#TimeUsernameProblemLanguageResultExecution timeMemory
1050532Kel_MahmutVision Program (IOI19_vision)C++14
8 / 100
45 ms9068 KiB
#include "vision.h" #include <bits/stdc++.h> #define pb push_back #define endl ("\n") #define all(aa) aa.begin(), aa.end() typedef long long ll; using namespace std; void construct_network(int h, int w, int k) { function<int(int, int)> f = [&](int a, int b){ return a * w + b; }; int maxdigit = 10; vector<int> xdigit(maxdigit); for(int dig = 1; dig <= maxdigit; dig++){ int num = 1 << dig; int lst = num / 2; vector<vector<int>> query(num); for(int i = 0; i < h; i++){ for(int j = 0; j < w; j++){ query[(j % num)/lst].pb(f(i, j)); } } vector<int> res; for(int i = 0; i < num; i++){ if(query[i].size()){ res.pb(add_xor(query[i])); } } xdigit[dig - 1] = add_or(res); } vector<int> ydigit(maxdigit); for(int dig = 1; dig <= maxdigit; dig++){ int num = 1 << dig; int lst = num / 2; vector<vector<int>> query(num); for(int i = 0; i < h; i++){ for(int j = 0; j < w; j++){ query[(i % num) / lst].pb(f(i, j)); } } vector<int> res; for(int i = 0; i < num; i++){ if(query[i].size()) res.pb(add_xor(query[i])); } ydigit[dig - 1] = add_or(res); } vector<int> notxdigit(maxdigit); vector<int> notydigit(maxdigit); for(int i = 0; i < maxdigit; i++){ notxdigit[i] = add_not(xdigit[i]); } for(int i = 0; i < maxdigit; i++){ notydigit[i] = add_not(ydigit[i]); } function<int(int)> xask = [&](int a){ vector<int> query(maxdigit); for(int dig = 0; dig < maxdigit; dig++){ if((a >> dig) & 1){ query[dig] = xdigit[dig]; } else query[dig] = notxdigit[dig]; } int ret = add_and(query); return ret; }; function<int(int)> yask = [&](int a){ vector<int> query(maxdigit); for(int dig = 0; dig < maxdigit; dig++){ if((a >> dig) & 1){ query[dig] = ydigit[dig]; } else query[dig] = notydigit[dig]; } int ret = add_and(query); return ret; }; vector<int> ans; for(int x = 0; x <= k; x++){ int y = k - x; vector<int> cur; cur.pb(xask(x)); cur.pb(yask(y)); ans.pb(add_and(cur)); } int lesgoo = add_or(ans); }

Compilation message (stderr)

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