4484 | 2023. 03. 28 13:58:24 | ZsofiaKeresztely | Társaság (50) | cpp14 | Elfogadva 50/50 | 18ms | 5224 KiB |
#include <bits/stdc++.h>
using namespace std;
#define pii pair<ll, ll>
#define fi first
#define se second
typedef long long ll;
vector<vector<pii> > g;
pii dist(int v, ll val){
pii r = {0, 0};
for (pii x : g[v]){
pii d = dist(x.fi, val);
r.se += d.se;
if (d.fi + x.se > val){
r.fi = max(r.fi, (ll)0);
r.se++;
}
else{
r.fi = max(r.fi, d.fi + x.se);
}
}
return r;
}
int main()
{
int n, k;
cin >> n >> k;
g.resize(n+1);
for (int i=2; i<=n; i++){
int a, b;
cin >> a >> b;
g[a].push_back({i, b});
}
ll l = -1, r = 1e13;
while (l + 1 < r){
ll m = (l + r) / 2;
if (dist(1, m).se > k){
l = m;
}
else{
r = m;
}
}
cout << r;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 50/50 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1884 KiB | |||
2 | Elfogadva | 0/0 | 9ms | 2564 KiB | |||
3 | Elfogadva | 3/3 | 3ms | 2280 KiB | |||
4 | Elfogadva | 3/3 | 3ms | 2520 KiB | |||
5 | Elfogadva | 3/3 | 2ms | 2608 KiB | |||
6 | Elfogadva | 3/3 | 3ms | 2708 KiB | |||
7 | Elfogadva | 3/3 | 3ms | 2940 KiB | |||
8 | Elfogadva | 3/3 | 4ms | 3300 KiB | |||
9 | Elfogadva | 3/3 | 4ms | 3312 KiB | |||
10 | Elfogadva | 3/3 | 7ms | 3484 KiB | |||
11 | Elfogadva | 3/3 | 8ms | 3528 KiB | |||
12 | Elfogadva | 3/3 | 10ms | 3836 KiB | |||
13 | Elfogadva | 4/4 | 12ms | 4084 KiB | |||
14 | Elfogadva | 4/4 | 13ms | 4320 KiB | |||
15 | Elfogadva | 4/4 | 14ms | 4676 KiB | |||
16 | Elfogadva | 4/4 | 17ms | 5032 KiB | |||
17 | Elfogadva | 4/4 | 18ms | 5224 KiB |