# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
216732 | ainta | Capital City (JOI20_capital_city) | C++17 | 962 ms | 174600 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<cstdio>
#include<algorithm>
#include<vector>
#define N_ 210000
#define M_ 1010000
using namespace std;
vector<int>E[N_], G[M_], P[N_], H[M_];
int n, w[N_], K, C[N_], Dep[N_], par[N_][20], PPP[N_], Num[N_], Ed[N_], ReNum[N_], cnt;
void DFS(int a, int pp) {
par[a][0] = pp;
C[a] = 1;
for (int i = 0; i < 18; i++)par[a][i + 1] = par[par[a][i]][i];
for (auto &x : E[a]) {
if (x != pp) {
Dep[x] = Dep[a] + 1;
DFS(x, a);
C[a] += C[x];
}
}
}
void HLD(int a, int pp, int rt) {
Num[a] = ++cnt;
ReNum[cnt] = a;
G[n + cnt].push_back(w[a]);
PPP[a] = rt;
int Mx = -1, pv = -1;
for (auto &x : E[a]) {
if (x == pp)continue;
if (Mx < C[x])Mx = C[x], pv = x;
}
Compilation message (stderr)
# | 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... |