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 <bits/stdc++.h>
#include "vision.h"
using namespace std;
void construct_network(int H, int W, int K){
vector<int> ow, xw, ad, oc, xc;
int f = -1, l = -1;
for(int i = 0;i < H;i++){
vector<int> o;
for(int j = 0;j < W;j++){
o.push_back(i * W + j);
}
ow.push_back(add_or(o));
xw.push_back(add_xor(o));
}
for(int j = 0;j < W;j++){
vector<int> o;
for(int i = 0;i < H;i++){
o.push_back(i * W + j);
}
oc.push_back(add_or(o));
xc.push_back(add_xor(o));
}
if(H == 1) goto noH;
for(int i = 0;i < H-1;i++){
ad.push_back(add_and({ow[i], ow[i+1]}));
}
f = add_and({add_not(add_or(xc)), add_or(ad)});
ad.clear();
noH:
if(W == 1) goto noW;
for(int i = 0;i < W-1;i++){
ad.push_back(add_and({oc[i], oc[i+1]}));
}
l = add_and({add_not(add_or(xw)), add_or(ad)});
noW:
if(l == -1) add_or({f});
else if(f == -1) add_or({l});
else add_or({f, l});
}
# | 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... |