A92617.[NOIP2025] 树的价值

NOI/NOI+/CTSC

NOIP提高组

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

NOIP2025 T3

给定一棵 nn 个结点的有根树,其中结点 1 为根,结点 ii (2in2 \le i \le n) 的父亲结点为结点 pip_i

对于 1in1 \le i \le n,定义结点 ii 的深度 did_i 为结点 1 到结点 ii 的简单路径的边数,也就是说,d1=0d_1 = 0di=dpi+1d_i = d_{p_i} + 1 (2in2 \le i \le n)。定义有根树的高度 hh 为所有结点的深度的最大值,即 h=maxi=1ndih = \max_{i=1}^{n} d_i

给定高度的上限 mm。在本题中,给定的有根树的高度不超过 mm

你需要给每个结点设置一个非负整数作为它的权值。对于 1in1 \le i \le n,若结点 ii 的权值为 aia_i,令 SiS_i 表示结点 ii 的子树中结点权值构成的集合。对于每一种权值设置方案,定义树的价值为 i=1nmex(Si)\sum_{i=1}^{n} \operatorname{mex}(S_i),其中 mex(S)\operatorname{mex}(S) 表示在集合 SS 中的最小非负整数。例如,在下图中,若设置 a1=3a_1 = 3a2=2a_2 = 2a3=a4=0a_3 = a_4 = 0a5=1a_5 = 1,则 S1={0,1,2,3}S_1 = \{0,1,2,3\}S2={0,1,2}S_2 = \{0,1,2\}S3={0}S_3 = \{0\}S4={0}S_4 = \{0\}S5={1}S_5 = \{1\},树的价值为 4+3+1+1+0=94 + 3 + 1 + 1 + 0 = 9

【等待好心人上传图片】

你需要求出,在所有权值设置方案中,树的价值的最大值。

输入格式

本题包含多组测试数据。

输入的第一行包含一个正整数 kk,表示测试数据组数。

接下来依次输入每组测试数据。对于每组测试数据:

  • 第一行包含两个正整数 n,mn, m,分别表示结点数量与高度的上限;
  • 第二行包含 n1n-1 个正整数 p2,p3,,pnp_2, p_3, \ldots, p_n,分别表示每个结点的父亲结点。

输出格式

对于每组测试数据,输出一行一个非负整数,表示树的价值的最大值。

输入输出样例

  • 输入#1

    2
    5 2
    1 1 2 2
    7 2
    1 1 2 2 2 3

    输出#1

    9
    13

说明/提示

【样例 1 解释】

该样例共包含两组测试数据。

对于第一组测试数据,可以设置 a1=3a_1 = 3a2=2a_2 = 2a3=a4=0a_3 = a_4 = 0a5=1a_5 = 1,则树的价值为 4+3+1+1+0=94 + 3 + 1 + 1 + 0 = 9

对于第二组测试数据,可以设置 a1=4a_1 = 4a2=3a_2 = 3a3=2a_3 = 2a4=a6=1a_4 = a_6 = 1a5=a7=0a_5 = a_7 = 0,则树的价值为 5+4+2+0+1+0+1=135 + 4 + 2 + 0 + 1 + 0 + 1 = 13

【数据范围】

对于所有测试数据,均有:

  • 1t51 \le t \le 5
  • 2n8,0002 \le n \le 8,0001mmin(n1,800)1 \le m \le \min(n - 1, 800)
  • 对于所有 2in2 \le i \le n,均有 1pii11 \le p_i \le i - 1
  • 给定的有根树的高度不超过 mm
测试点编号 nn \le mm \le
1,21,2 77 n1n-1
3,43,4 1313 n1n-1
5,65,6 1818 n1n-1
7,87,8 4040 n1n-1
9,109,10 120120 n1n-1
11,1211,12 360360 n1n-1
13,1413,14 4,0004{,}000 22
151715\sim 17 4,0004{,}000 1010
18,1918,19 4,0004{,}000 5050
202520\sim 25 8,0008{,}000 800800
首页