Submission #403084

#TimeUsernameProblemLanguageResultExecution timeMemory
403084rocks03Vision Program (IOI19_vision)C++14
44 / 100
169 ms2960 KiB
#include<bits/stdc++.h> using namespace std; #define ll long long #define pii pair<int, int> #define pll pair<ll, ll> #define ff first #define ss second #define pb push_back #define SZ(x) ((int)(x).size()) #define all(x) x.begin(), x.end() #define debug(x) cout << #x << ": " << x << " " #define nl cout << "\n" #define rep(i, a, b) for(int i = (a); i < (b); i++) #define per(i, a, b) for(int i = (a); i >= (b); i--) mt19937 rng(chrono::steady_clock::now().time_since_epoch().count()); int add_and(vector<int> Ns); int add_or(vector<int> Ns); int add_xor(vector<int> Ns); int add_not(int N); void construct_network(int H, int W, int K){ auto dist = [&](int x, int y, int x2, int y2){ assert(x >= 0 && x < H && y >= 0 && y < W); assert(x2 >= 0 && x2 < H && y2 >= 0 && y2 < W); return abs(x - x2) + abs(y - y2); }; auto cell = [&](int x, int y){ return x * W + y; }; int cnt = H * W; vector<int> v; rep(h, 0, H){ rep(w, 0, W){ vector<int> v2; rep(h2, 0, H){ rep(w2, 0, W){ if(dist(h, w, h2, w2) == K){ v2.pb(cell(h2, w2)); } } } if(!SZ(v2)) continue; add_or(v2); add_and({cell(h, w), cnt}); cnt++; v.pb(cnt); cnt++; } } add_or(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...