이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "vision.h"
#include <bits/stdc++.h>
using namespace std;
//macros
typedef long long ll;
typedef pair<int, int> ii;
typedef tuple<int, int, int> iii;
typedef vector<int> vi;
typedef vector<ii> vii;
typedef vector<iii> viii;
typedef vector<ll> vll;
#define REP(a,b,c) for(int a=int(b); a<int(c); a++)
#define RE(a,c) REP(a,0,c)
#define RE1(a,c) REP(a,1,c+1)
#define REI(a,b,c) REP(a,b,c+1)
#define REV(a,b,c) for(int a=int(c-1); a>=int(b); a--)
#define INF 1e9
#define pb push_back
#define fi first
#define se second
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
const int MX=500;
int h, w, k;
int getPos(int x, int y) {
return x+y*w;
}
void construct_network(int H, int W, int K) {
h=H, w=W, k=K;
vi diagonal[2];
int dist[2][MX];
vi ans;
RE(i,w+h-1) {
int x=i, y=0;
if(x>=w) {
y=x-w+1;
x=w-1;
}
vi f;
while(x>=0 && y<h) {
f.pb(getPos(x,y));
x--;
y++;
}
diagonal[0].pb(add_or(f));
}
RE(i,w+h-1) {
int x=0, y=h-i-1;
if(y<0) {
x=-y;
y=0;
}
vi f;
while(x<w && y<h) {
f.pb(getPos(x,y));
x++;
y++;
}
diagonal[1].pb(add_or(f));
}
RE(i,2) RE(j,k+1) {
vi f;
if(j == 0) {
vi g;
RE(l,diagonal[i].size())
g.pb(diagonal[i][l]);
dist[i][j] = add_xor(g);
} else {
RE(l,diagonal[i].size()-j) {
vi g;
g.pb(diagonal[i][l]);
g.pb(diagonal[i][l+j]);
f.pb(add_and(g));
}
dist[i][j] = add_or(f);
}
}
RE(i,2) {
vi f;
f.pb(dist[i][k]);
vi g;
REP(j,1,k+1) g.pb(dist[!i][j]);
f.pb(add_or(g));
ans.pb(add_and(f));
}
add_or(ans);
}
# | 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... |