| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 208530 | dolphingarlic | popa (BOI18_popa) | C++14 | 0 ms | 0 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "popa.h"
int P[1000];
int solve(int N, int* L, int* R) {
int root = -1;
for (int i = 0; i < n; i++) {
L[i] = R[i] = P[i] = -1;
int par = i - 1;
while (par != -1 && query(i, i, par, i)) {
R[par] = L[i];
P[L[i]] = par;
L[i] = par;
int parpar = P[par];
P[par] = i;
par = parpar;
}
if (par == -1) {
L[i] = root;
if (root != -1) P[root] = i;
root = i;
} else {
R[par] = i;
P[i] = par;
}
}
return root;
}
