Submission #611724

#TimeUsernameProblemLanguageResultExecution timeMemory
611724HanksburgerVision Program (IOI19_vision)C++17
100 / 100
27 ms2828 KiB
#include "vision.h" #include <bits/stdc++.h> using namespace std; vector<int> l, r, a, b, c, d, tmp; void construct_network(int n, int m, int k) { for (int i=0; i<=n+m-2; i++) { tmp.clear(); for (int j=0; j<n; j++) if (i-j>=0 && i-j<m) tmp.push_back(j*m+i-j); l.push_back(add_or(tmp)); } for (int i=-n+1; i<=m-1; i++) { tmp.clear(); for (int j=0; j<n; j++) if (i+j>=0 && i+j<m) tmp.push_back(j*m+i+j); r.push_back(add_or(tmp)); } for (int i=0; i<n+m-2; i++) { tmp.clear(); for (int j=i+1; j<=min(i+k, n+m-2); j++) tmp.push_back(l[j]); int x=add_or(tmp); tmp.clear(); tmp.push_back(l[i]); tmp.push_back(x); a.push_back(add_and(tmp)); if (i+k<=n+m-2) { tmp.clear(); tmp.push_back(l[i]); tmp.push_back(l[i+k]); b.push_back(add_and(tmp)); } } for (int i=0; i<n+m-2; i++) { tmp.clear(); for (int j=i+1; j<=min(i+k, n+m-2); j++) tmp.push_back(r[j]); int x=add_or(tmp); tmp.clear(); tmp.push_back(r[i]); tmp.push_back(x); c.push_back(add_and(tmp)); if (i+k<=n+m-2) { tmp.clear(); tmp.push_back(r[i]); tmp.push_back(r[i+k]); d.push_back(add_and(tmp)); } } tmp.clear(); tmp.push_back(add_or(a)); tmp.push_back(add_xor(l)); int x1=add_or(tmp); tmp.clear(); tmp.push_back(add_or(d)); tmp.push_back(x1); int x2=add_and(tmp); tmp.clear(); tmp.push_back(add_or(c)); tmp.push_back(add_xor(r)); int x3=add_or(tmp); tmp.clear(); tmp.push_back(add_or(b)); tmp.push_back(x3); int x4=add_and(tmp); tmp.clear(); tmp.push_back(x2); tmp.push_back(x4); add_or(tmp); }
#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...