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> rows;
for(int x = 0; x <= H + W - 2; x++) {
vector<int> v;
for(int i = 0; i <= x; i++) {
int j = x - i;
if(i < H && j < W)
v.push_back(i * W + j);
}
if(v.empty()) continue;
rows.push_back(add_or(v));
}
vector<int> cols;
for(int y = -W + 1; y <= H - 1; y++) {
vector<int> v;
for(int i = 0; i < H; i++) {
int j = i - y;
if(j < W && j >= 0)
v.push_back(i * W + j);
}
cols.push_back(add_or(v));
}
vector<int> res;
for(int i = 0; i < (int)rows.size() - K; i++) {
res.push_back(add_and({rows[i], rows[i + K]}));
}
for(int i = 0; i < (int)cols.size() - K; i++) {
res.push_back(add_and({cols[i], cols[i + K]}));
}
add_or(res);
}
# | 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... |