Submission #518826

#TimeUsernameProblemLanguageResultExecution timeMemory
518826AdamGSVision Program (IOI19_vision)C++17
100 / 100
16 ms1772 KiB
#include "vision.h" #include<bits/stdc++.h> using namespace std; typedef long long ll; typedef long double ld; #define rep(a, b) for(int a = 0; a < (b); ++a) #define st first #define nd second #define pb push_back #define all(a) a.begin(), a.end() void construct_network(int n, int m, int k) { vector<int>V; rep(i, n) { rep(j, m) V.pb(i*m+j); add_or(V); V.clear(); } rep(i, n) { if(i) V.pb(n*m+n+i-1); V.pb(n*m+i); add_or(V); V.clear(); } for(int i=n-1; i>=0; --i) { if(i<n-1) V.pb(n*m+2*n+(n-i-2)); V.pb(n*m+i); add_or(V); V.clear(); } rep(j, m) { rep(i, n) V.pb(i*m+j); add_or(V); V.clear(); } rep(i, m) { if(i) V.pb(n*m+3*n+m+i-1); V.pb(n*m+3*n+i); add_or(V); V.clear(); } for(int i=m-1; i>=0; --i) { if(i<m-1) V.pb(n*m+3*n+2*m+(m-i-2)); V.pb(n*m+3*n+i); add_or(V); V.clear(); } rep(i, n-1) { V.pb(n*m+n+i); V.pb(n*m+2*n+(n-i-2)); add_and(V); V.clear(); } rep(i, m-1) { V.pb(n*m+3*n+m+i); V.pb(n*m+3*n+2*m+(m-i-2)); add_and(V); V.clear(); } int bit=n*m+3*(n+m); add_not(0); V.pb(0); V.pb(n*m+4*(n+m)-2); add_and(V); V.clear(); rep(i, 18) { V.pb(n*m+4*(n+m)-1); add_or(V); V.clear(); } int akt=n*m+4*(n+m); rep(i, n+m-2) { V.pb(bit); V.pb(akt); add_xor(V); add_and(V); V.clear(); rep(j, 8) { V.pb(akt+18+2*j+1); V.pb(akt+2*j+2); add_xor(V); add_and(V); V.clear(); } ++bit; akt+=18; } rep(i, 9) { V.pb(akt); if(k&(1<<i)) add_and(V); else add_not(akt); V.clear(); akt+=2; } rep(i, 9) V.pb(akt+i); add_and(V); V.clear(); }
#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...