Submission #1186000

#TimeUsernameProblemLanguageResultExecution timeMemory
1186000gygTree (IOI24_tree)C++20
7 / 100
53 ms16932 KiB
#include "tree.h"
#include <bits/stdc++.h>
using namespace std;
#define sig signed
#define int long long
#define arr array 
#define vec vector 
#define pii pair<int, int>
#define fir first
#define sec second
const int N = 2e5 + 5;

int n;
arr<vec<int>, N> ch;
arr<int, N> wg;

int nm;

void init(vec<sig> _pr, vec<sig> _wg) {
    n = _pr.size();
    for (int u = 1; u <= n; u++)
        ch[_pr[u - 1] + 1].push_back(u);
    for (int u = 1; u <= n; u++)
        wg[u] = _wg[u - 1];

    for (int u = 1; u <= n; u++)
        nm += ch[u].empty();
}


int query(sig l, sig r) {
    int ans = nm * l + max(nm * l - r, 0ll);
    return ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...