제출 #580685

#제출 시각아이디문제언어결과실행 시간메모리
580685georgievskiyVision Program (IOI19_vision)C++17
52 / 100
3 ms468 KiB
#include "vision.h" #include <bits/stdc++.h> using namespace std; #define pii pair<int,int> void construct_network(int n, int m, int k) { if (max(n, m) > 30 && min(n, m) > 1) { vector<int> o; for (int i = 0; i < n; i++) for (int j = 0; j < m; j++) if (i + j == k) o.push_back(i * m + j); add_or(o); return; } int p = 0; vector<pii> link; for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { vector<int> o; for (int t = 0; t <= k; t++) { int i1 = i + t, j1 = j - (k - t); int i2 = i1, j2 = j + (k - t); if (i1 < n && j1 >= 0) o.push_back(i1 * m + j1); if (i2 < n && j2 < m && t > 0 && t < k) o.push_back(i2 * m + j2); } if (o.size()) { link.push_back({i * m + j, p + n * m}); add_or(o); p++; } } } for (auto t : link) { add_and(vector<int>({t.first, t.second})); } vector<int> fin; for (int ind = n * m + p; ind < n * m + 2 * p; ind++) { fin.push_back(ind); } add_or(fin); return; }
#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...