Problem - 1746D - Codeforces
Problem - 1746D - Codeforces
|
stdfloat | Logout
HOME TOP CATALOG CONTESTS GYM PROBLEMSET GROUPS RATING EDU API CALENDAR HELP
You are given a rooted tree consisting of n vertices. The vertices are numbered from 1 to n , → Virtual participation
and the root is the vertex 1 . You are also given a score array s1 , s2 , … , sn .
→ Clone Contest to Mashup
A multiset of k simple paths is called valid if the following two conditions are both true.
Input
Each test contains multiple test cases. The first line contains a single integer t (1 ≤ t ≤ 104 ) → Contest materials
— the number of test cases. The description of the test cases follows.
Announcement (en)
The first line of each test case contains two space-separated integers n (2 ≤ n ≤ 2 ⋅ 105 ) Tutorial (en)
and k (1 ≤ k ≤ 109 ) — the size of the tree and the required number of paths.
The second line contains n − 1 space-separated integers p 2 , p 3 , … , p n (1 ≤ p i ≤ n ),
where p i is the parent of the i -th vertex. It is guaranteed that this value describe a valid tree
with root 1 .
5
It is guaranteed that the sum of n over all test cases does not exceed 2 ⋅ 10 .
Output
For each test case, print a single integer — the maximum value of a path multiset.
Example
input Copy
2
5 4
1 2 1 3
6 2 1 5 7
5 3
1 2 1 3
6 6 1 4 10
output Copy
54
56
Note
https://mirror.codeforces.com/problemset/problem/1746/D 1/2
5/22/24, 12:09 PM Problem - 1746D - Codeforces
In the first test case, one of optimal solutions is four paths 1 → 2 → 3 → 5 ,
1 → 2 → 3 → 5 , 1 → 4, 1 → 4, here c = [4, 2, 2, 2, 2]. The value equals to
4 ⋅ 6 + 2 ⋅ 2 + 2 ⋅ 1 + 2 ⋅ 5 + 2 ⋅ 7 = 54 .
In the second test case, one of optimal solution is three paths 1 → 2 → 3 → 5,
1 → 2 → 3 → 5 , 1 → 4, here c = [3, 2, 2, 1, 2]. The value equals to
3 ⋅ 6 + 2 ⋅ 6 + 2 ⋅ 1 + 1 ⋅ 4 + 2 ⋅ 10 = 56.
Supported by
https://mirror.codeforces.com/problemset/problem/1746/D 2/2