# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
836594 | happypotato | Vision Program (IOI19_vision) | C++17 | 13 ms | 1904 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "vision.h"
#include <bits/stdc++.h>
using namespace std;
#define pb push_back
void construct_network(int n, int m, int k) {
if (n * m == 2) {
add_and({0, 1});
return;
}
const int ZERO = add_and({0, 1, 2});
const int ONE = add_not(ZERO);
function<int(void)> add_zero = [&]() -> int { return add_and({ZERO}); };
function<int(void)> add_one = [&]() -> int { return add_and({ONE}); };
function<int(int, int)> hash = [&](int x, int y) -> int {
return x * m + y;
};
function<bool(int, int)> valid = [&](int x, int y) -> bool {
return ((0 <= x && x < n) && (0 <= y && y < m));
};
// stores position of min in range [st, en]
function<int(int, int)> findmin = [&](int st, int en) -> int {
int diff = en - st + 1;
int prev = add_zero();
for (int i = 1; i < 8; i++) add_zero();
vector<int> allprev;
int prevtakexor = add_zero();
for (int cur = 1; cur <= diff; cur++) { // from min
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |