Submission #1219553

#TimeUsernameProblemLanguageResultExecution timeMemory
1219553Theo830Vision Program (IOI19_vision)C++17
44 / 100
33 ms7496 KiB
#include "vision.h" #include<bits/stdc++.h> using namespace std; #define ll long long #define f(i,a,b) for(ll i = a;i < b;i++) #define ii pair<ll,ll> #define F first #define S second #define pb push_back int n,m; int box(int i,int j){ return i * m + j; } void construct_network(int H, int W, int K) { n = H; m = W; vector<ll>ex; vector<int>a; f(i,0,n){ f(j,0,m){ a.pb(box(i,j)); } ex.pb(add_xor(a)); } a.clear(); f(j,0,m){ f(i,0,n){ a.pb(box(i,j)); } ex.pb(add_xor(a)); } vector<int>v; v.pb(ex.back()); ll zero = add_or(v); vector<ll>num; f(k,0,11){ v.clear(); v.pb(zero); num.pb(add_or(v)); } for(auto x:ex){ num.back() = x; f(i,0,10){ v.clear(); v.pb(num[i]); v.pb(num.back()); ll neo = add_xor(v); num.back() = add_and(v); num[i] = neo; } } ll ans = add_not(zero); f(i,0,10){ if(K & (1<<i)){ v.clear(); v.pb(ans); v.pb(num[i]); ans = add_and(v); } else{ ll res = add_not(num[i]); v.clear(); v.pb(ans); v.pb(res); ans = add_and(v); } } }
#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...