#CF1830D. Mex 树
Mex 树
D. Mex 树
时间限制:每个测试 秒
内存限制:每个测试 MB
给定一棵有 个节点的树。对于每个节点,你可以将其染成 或 。
一条路径 的值等于从 到 的最短路径上节点颜色的 MEX。
一种染色方案的价值等于所有满足 的路径 的值之和。
求任意一种染色方案所能达到的最大价值。
数组的 MEX(最小缺失值)是指最小的没有出现在数组中的非负整数。例如:
- 的 MEX 是 ,因为 不在数组中。
- 的 MEX 是 ,因为 和 在数组中,但 不在。
- 的 MEX 是 ,因为 都在数组中,但 不在。
输入
每个测试包含多个测试用例。第一行输入一个整数 ,表示测试用例的数量。接下来是各个测试用例的描述。
每个测试用例的第一行包含一个整数 ,表示树的节点数。
接下来的 行,每行包含两个整数 和 ,表示顶点 和 之间的一条边。保证给定的边构成一棵树。
保证所有测试用例的 之和不超过 。
输出
对于每个测试用例,输出任意一种染色方案所能达到的最大价值。
示例输入
4
3
1 2
2 3
4
1 2
1 3
1 4
10
1 2
1 3
3 4
3 5
1 6
5 7
2 8
6 9
6 10
1
示例输出
8
15
96
1
说明
在第一个样例中,我们将顶点 染成 ,顶点 染成 。之后,考虑所有路径:
- 的值为
- 的值为
- 的值为
- 的值为
- 的值为
- 的值为
这些值的总和为 ,这是可能的最大值。