# | 제출 시각UTC-0 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
465403 | dutch | 늑대인간 (IOI18_werewolf) | C++17 | 653 ms | 60312 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <bits/stdc++.h>
using namespace std;
#include "werewolf.h"
typedef vector<int> vi;
#define vii(Z) iota(begin(Z), end(Z), 0)
const int Z = 2e5;
int Q, k, dfsTimer;
int e[Z], r[Z], lca[2][Z], st[2*Z], tL[2][Z], tR[2][Z];
vi g[2][Z], g2[Z];
int find(int u){
return e[u] < 0 ? u : e[u] = find(e[u]);
}
void dfs(int u){
tL[k][u] = ++dfsTimer;
for(int &v : g2[u]) dfs(v);
tR[k][u] = dfsTimer;
}
vi check_validity(int N, vi X, vi Y, vi S, vi E, vi L, vi R){
Q = size(S);
for(int i=size(X); --i>=0; ){
if(X[i] > Y[i]) swap(X[i], Y[i]);
g[0][Y[i]].push_back(X[i]);
g[1][X[i]].push_back(Y[i]);
}
# | 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... |