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;
void construct_network(int H, int W, int K) {
int a[H][W], d1[H+W-1], d2[H+W-1];
for(int i = 0; i < H; i++) {
for(int j = 0; j < W; j++) {
a[i][j] = i*W+j;
}
}
vector<int> v2;
for(int i = 0; i < H+W-1; i++) {
vector<int> v;
int x, y;
if(i < H) x = H-i-1, y = 0;
else x = 0, y = i-H+1;
while(x < H && y < W) {
v.push_back(a[x][y]);
x++; y++;
}
d1[i] = add_xor(v);
v2.push_back(d1[i]);
}
int d1e = add_not(add_or(v2));
v2.clear();
for(int i = 0; i < H+W-1; i++) {
vector<int> v;
int x, y;
if(i < W) x = 0, y = i;
else x = i-W+1, y = W-1;
while(x < H && y >= 0) {
v.push_back(a[x][y]);
x++; y--;
}
d2[i] = add_xor(v);
v2.push_back(d2[i]);
}
int d2e = add_not(add_or(v2));
v2.clear();
for(int i = 0; i < H+W-1-K; i++) {
vector<int> v;
for(int j = i; j <= i+K; j++) v.push_back(d1[j]);
v2.push_back(add_and({add_or(v), add_not(add_xor(v))}));
}
v2.push_back(d1e);
int d1k = add_or(v2);
v2.clear();
for(int i = 0; i < H+W-K; i++) {
vector<int> v;
for(int j = i; j <= i+K-1; j++) v.push_back(d1[j]);
v2.push_back(add_and({add_or(v), add_not(add_xor(v))}));
}
v2.push_back(d1e);
int d1k2 = add_or(v2);
v2.clear();
for(int i = 0; i < H+W-1-K; i++) {
vector<int> v;
for(int j = i; j <= i+K; j++) v.push_back(d2[j]);
v2.push_back(add_and({add_or(v), add_not(add_xor(v))}));
}
v2.push_back(d2e);
int d2k = add_or(v2);
v2.clear();
for(int i = 0; i < H+W-K; i++) {
vector<int> v;
for(int j = i; j <= i+K-1; j++) v.push_back(d2[j]);
v2.push_back(add_and({add_or(v), add_not(add_xor(v))}));
}
v2.push_back(d2e);
int d2k2 = add_or(v2);
v2.clear();
add_and({add_or({add_and({d1k, add_not(d1k2)}), add_and({d2k, add_not(d2k2)})}), d1k, d2k});
}
# | 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... |