# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1109492 | nicksms | Tree (IOI24_tree) | C++17 | 213 ms | 80108 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 "tree.h"
#include <bits/stdc++.h>
using namespace std;
using ll=long long;
using db=long double;
template<class T> using V=vector<T>;
using vi = V<int>;
using vl = V<ll>;
using pi = pair<int,int>;
#define f first
#define s second
#define sz(x) (int)((x).size())
#define each(a,b) for (auto &a : b)
const int MAXN = 1<<18;
int j[18][MAXN], jm[18][MAXN];
ll w[MAXN];
ll ans[MAXN], csum[MAXN], a0;
vi k[MAXN], legs[MAXN];
void dfs(int i, int p) {
a0 += w[i]*(csum[i] = abs(1-sz(k[i])));
if (sz(k[i]) == 0) return;
j[0][i] = p;
jm[0][i] = min(w[i], w[p]);
for (int b = 1; b < 18; b++) {
j[b][i] = j[b-1][j[b-1][i]];
jm[b][i] = min(jm[b-1][i], jm[b-1][j[b-1][i]]);
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... |
# | 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... |