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;
vector<int> last;
void f (int a, int b, int c, int d, int H, int W)
{
if(c >= H or d >= W or d < 0)
return ;
int cell_a = a * W + b,
cell_b = c * W + d;
int now = add_and(vector<int> {cell_a, cell_b});
last.push_back(now);
}
void construct_network(int H, int W, int K) {
if(min(H, W) <= 100 or max(H, W) == 1)
{
for(int i = 0 ; i < H ; i++)
{
for(int j = 0 ; j < W ; j++)
{
for(int a = 0 ; i + a < H and a <= K ; a++)
{
int b = K - a;
f(i, j, i+a, j+b, H, W);
f(i, j, i+a, j-b, H, W);
}
}
}
}
else
{
int i = 0, j = 0;
for(int a = 0 ; i + a < H and a <= K ; a++)
{
int b = K - a;
f(i, j, i+a, j+b, H, W);
f(i, j, i+a, j-b, H, W);
}
}
add_or(last);
return ;
}
# | 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... |