제출 #1246916

#제출 시각아이디문제언어결과실행 시간메모리
1246916rtriVision Program (IOI19_vision)C++20
44 / 100
44 ms1988 KiB
#include "vision.h" #include <bits/stdc++.h> using namespace std; int H, W, K; int dist(int a, int b) { return abs((a % W) - (b % W)) + abs((a / W) - (b / W)); } void construct_network(int _H, int _W, int _K) { H = _H, W = _W, K = _K; vector<int> squares(W * H); for (int i = 0; i < W * H; i++) squares[i] = i; std::random_device rd; std::mt19937 g(rd()); shuffle(squares.begin(), squares.end(), g); vector<int> checks; int instr = H * W; for (int i : squares) { if (instr + 2 > 10000) break; vector<int> nodes; for (int j = 0; j < W * H; j++) if (dist(i, j) == K) nodes.push_back(j); if (!nodes.size()) continue; add_or(nodes); add_and({instr, i}); checks.push_back(instr + 1); instr += 2; } add_or(checks); }
#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...