Submission #733647

#TimeUsernameProblemLanguageResultExecution timeMemory
733647senthetaVision Program (IOI19_vision)C++17
44 / 100
204 ms3036 KiB
#include "vision.h" // author : sentheta aka vanwij #include<iostream> #include<iomanip> #include<algorithm> #include<cassert> #include<random> #include<chrono> #include<cmath> #include<string> #include<vector> #include<bitset> #include<queue> #include<stack> #include<map> #include<set> using namespace std; #define Int long long #define V vector #define pii pair<int,int> #define ff first #define ss second mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count()); #define pow2(x) (1LL<<(x)) #define msb(x) (63-__builtin_clzll(x)) #define bitcnt(x) (__builtin_popcountll(x)) #define nl '\n' #define _ << ' ' << #define all(x) (x).begin(), (x).end() #define rep(i,a,b) for(int i = (int)(a); i < (int)(b); i++) #define dbg(x) if(1) cout << "?" << #x << " : " << (x) << endl << flush; int h, w, k; int f(int i,int j){ return i*w+j; } void construct_network(int _h,int _w,int _k){ h = _h; w = _w; k = _k; V<int> results; rep(i,0,h) rep(j,0,w){ V<int> v; rep(p,0,h) rep(q,0,w) if(abs(i-p)+abs(j-q)==k){ v.push_back(f(p,q)); } if(!v.empty()){ int z = add_or(v); z = add_and({z, f(i,j)}); results.push_back(z); } } add_or(results); return; // V<int> Ns; // Ns = {0, 1}; // int a = add_and(Ns); // Ns = {0, a}; // int b = add_or(Ns); // Ns = {0, 1, b}; // int c = add_xor(Ns); // add_not(c); }
#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...