9267 | 2024. 02. 19 16:01:16 | PallanekPéter | Társaság (50) | cpp17 | Hibás válasz 42/50 | 13ms | 4452 KiB |
#include <bits/stdc++.h>
using namespace std;
int db = 0;
long long mid = 0;
vector<vector<pair<int,int>>> graf;
int bejaras(int u) {
int mx=0;
for(pair<int,int> v:graf[u]){
int ossz = bejaras(v.first)+v.second;
if(ossz > mid) {
ossz = 0;
db++;
}
mx=max(mx, ossz);
}
return mx;
}
int main(){
ios_base::sync_with_stdio(0);cin.tie(0);
int n, k;
cin >> n >> k;
graf.resize(n+1);
for(int i=2;i<=n;i++){
long long u, v;
cin >> u >> v;
graf[u].push_back({i, v});
}
long long l = 0, r = 1e13;
while(l<r){
mid=(l+r)/2;
bejaras(1);
if(db<=k){
r = mid;
} else{
if(l + 1 == r) break;
l = mid;
}
db = 0;
}
cout << r << endl;
return 0;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 42/50 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1896 KiB | |||
2 | Elfogadva | 0/0 | 8ms | 2548 KiB | |||
3 | Elfogadva | 3/3 | 3ms | 2292 KiB | |||
4 | Elfogadva | 3/3 | 3ms | 2508 KiB | |||
5 | Elfogadva | 3/3 | 3ms | 2740 KiB | |||
6 | Elfogadva | 3/3 | 3ms | 2928 KiB | |||
7 | Elfogadva | 3/3 | 3ms | 2828 KiB | |||
8 | Elfogadva | 3/3 | 3ms | 2972 KiB | |||
9 | Elfogadva | 3/3 | 4ms | 3240 KiB | |||
10 | Elfogadva | 3/3 | 6ms | 3500 KiB | |||
11 | Elfogadva | 3/3 | 6ms | 3636 KiB | |||
12 | Elfogadva | 3/3 | 8ms | 3680 KiB | |||
13 | Elfogadva | 4/4 | 8ms | 3816 KiB | |||
14 | Elfogadva | 4/4 | 8ms | 3920 KiB | |||
15 | Hibás válasz | 0/4 | 10ms | 3932 KiB | |||
16 | Elfogadva | 4/4 | 13ms | 4376 KiB | |||
17 | Hibás válasz | 0/4 | 13ms | 4452 KiB |