# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
949075 | weakweakweak | Two Currencies (JOI23_currencies) | C++17 | 114 ms | 9088 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 <bits/stdc++.h>
using namespace std;
#define pii pair<int,int>
#define fs first
#define sc second
const int N = 110000;
int n, m, q;
int sz[N], l[N], r[N], idnow = 0, head[N], par[N], dep[N] = {0}, mxson[N], pe[N], eto[N]; // pe是連到我頭上的那條邊的編號
vector <pii> e[N], checkpoint;
vector <pii> route[N];
int cnt[N] = {0};
void dfs_sz (int i, int p) {
par[i] = p, dep[i] = dep[p] + 1, sz[i] = 1;
mxson[i] = -1;
for (auto [j, id] : e[i]) {
if (j == p) continue;
dfs_sz(j, i);
sz[i] += sz[j], mxson[i] = j;
}
for (auto [j, id] : e[i]) if (j != p and sz[j] > sz[mxson[i]]) mxson[i] = j;
}
void build_hld (int i, int p, int hea) {
head[i] = hea, l[i] = ++idnow;
for (auto [j, id] : e[i]) {
if (j == p) pe[l[i]] = id, eto[id] = l[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... |