이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
//#include "grader.cpp"
#include "vision.h"
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
void construct_network(int H, int W, int K) {
int ind=H*W-1;
vector<int>v;
for (int i=0;i<H;i++){
for (int j=0;j<W;j++){
if (H*W>=5000 && (i || j)) continue;
vector<int>Ask;
for (int x=0;x<=K;x++){
int y=K-x;
for (int dx:{-1,1}){
for (int dy:{-1,1}){
int nx=i+x*dx,ny=j+y*dy;
if (nx<0 || nx>=H || ny<0 || ny>=W) continue;
Ask.push_back(nx*W+ny);
}
}
}
if (!Ask.empty()){
add_or(Ask);
ind++;
add_and({ind,i*W+j});
ind++;
v.push_back(ind);
}
}
}
add_or(v);
}
/**
2 3 3
0 0 0 1
0 0 0 2
0 0 1 0
0 0 1 1
0 0 1 2
0 1 0 2
0 1 1 0
0 1 1 1
0 1 1 2
0 2 1 0
0 2 1 1
0 2 1 2
1 0 1 1
1 0 1 2
1 1 1 2
-1
**/
# | 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... |