# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
617751 | lorenzoferrari | Vision Program (IOI19_vision) | C++17 | 11 ms | 1172 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 <vector>
#include <cassert>
using namespace std;
void construct_network(int h, int w, int k) {
int fid;
int tid;
{
int t = add_not(0);
tid = add_or({0, t});
fid = add_xor({0,0});
}
vector<int> rows(h);
vector<int> cols(w);
for (int i = 0; i < h; ++i) {
vector<int> q;
for (int j = 0; j < w; ++j) {
q.push_back(i*w + j);
}
rows[i] = add_or(q);
}
for (int j = 0; j < w; ++j) {
vector<int> q;
for (int i = 0; i < h; ++i) {
q.push_back(i*w + j);
}
cols[j] = add_or(q);
}
auto add_fixed = [&](vector<int> q, int d) -> int {
assert(d > 0);
vector<int> tor;
for (int i = 0; i + d < (int)q.size(); ++i) {
vector<int> qq{q[i], q[i+d]};
tor.push_back(add_and(qq));
}
if (tor.empty()) return fid;
return add_or(tor);
};
vector<int> dh(k+1);
vector<int> dw(k+1);
for (int i = 1; i <= k; ++i) {
dh[i] = add_fixed(rows, i);
dw[i] = add_fixed(cols, i);
}
vector<int> nh(k);
vector<int> nw(k);
for (int i = 1; i <= k; ++i) {
nh[i-1] = add_not(dh[i]);
nw[i-1] = add_not(dw[i]);
}
dh[0] = add_and(nh);
dw[0] = add_and(nw);
vector<int> tor;
for (int i = 0; i <= k; ++i) {
vector<int> q{dh[i], dw[k - i]};
tor.push_back(add_and(q));
}
add_or(tor);
}
Compilation message (stderr)
# | 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... |