# | 제출 시각UTC-0 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
373764 | lohacho | Construction of Highway (JOI18_construction) | C++14 | 795 ms | 22636 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <bits/stdc++.h>
using namespace std;
const int NS = (int)1e5 + 4;
int n, c[NS];
vector<int> way[NS];
int sz[NS], in[NS], incnt, up[NS], pr[NS];
pair<int, int> que[NS];
vector<pair<int, int>> block;
void dfs_sz(int x, int from){
sz[x] = 1; pr[x] = from;
for(auto&nxt:way[x]){
if(nxt == from){
continue;
}
dfs_sz(nxt, x);
sz[x] += sz[nxt];
if(way[x][0] == from || sz[way[x][0]] < sz[nxt]){
swap(way[x][0], nxt);
}
}
}
void dfs_hld(int x, int from){
in[x] = incnt++;
for(auto&nxt:way[x]){
if(nxt == from){
continue;
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |