#zXSCSlydlt60x6201. 走廊泼水节

走廊泼水节

好的,我已经把题目整理成完整清晰的格式,并附上了样例解释,方便直接上传。


题目描述

给定一棵 NN 个节点的树,边权为整数。
现在要在这棵树的基础上增加若干条边,将原树扩充为一个完全图(任意两个不同节点之间都有边),并且要保证:

  • 扩充后得到的完全图的唯一最小生成树仍然是原来的那棵树。
  • 增加的边的权值必须是整数

求满足条件的增加的边的权值总和的最小值


输入格式

第一行一个整数 tt,表示测试数据组数。
每组数据格式:

  • 第一行一个整数 NN
  • 接下来 N1N-1 行,每行三个整数 X,Y,ZX,Y,Z,表示树中 XXYY 之间有一条边,长度为 ZZ

输出格式

每组数据输出一行一个整数,表示最少需要增加的总边权值。

数据范围

  • 1N60001 \le N \le 6000
  • 1Z1001 \le Z \le 100
  • 输入数据保证是一棵树

输入样例

2
3
1 2 2
1 3 3
4
1 2 3
2 3 4
3 4 5

输出样例

4
17

样例解释

第一组数据(N=3)

树边:

  • 1-2: 2
  • 1-3: 3

要补成全完全图,缺少的边是 2-3。
为了保证原树是唯一最小生成树,新增的边 2-3 的权值必须大于原树中 1-2 和 1-3 路径上的最大边权(否则可能被替换)。

在原树中,2 到 3 的路径是 2-1-3,路径上的最大边权是 max(2,3) = 3。
为了让原树仍是唯一最小生成树,新边 2-3 的权值必须大于 3,且是整数,最小为 4。

所以增加的总权值为 4。

输出 4


第二组数据(N=4)

树边:

  • 1-2: 3
  • 2-3: 4
  • 3-4: 5

要补的边:

  1. 1-3
  2. 1-4
  3. 2-4

规则:对于任意两个不属于原树的点对 (u,v)(u,v),新增边权 wuvw_{uv} 必须大于原树中 uuvv 路径上的最大边权,否则这条新边可能替代原树中的某条边,破坏唯一性。因此 wuv=max_edge \inpath(u,v)+1w_{uv} = \max\_\text{edge \in path(u,v)} + 1 的最小整数。

计算:

  • 1-3 在原树中路径:1-2-3,边权 3 和 4,最大值 4,新边最小为 5。
  • 1-4 在原树中路径:1-2-3-4,边权 3,4,5,最大值 5,新边最小为 6。
  • 2-4 在原树中路径:2-3-4,边权 4,5,最大值 5,新边最小为 6。

所以增加的总权值 = 5 + 6 + 6 = 17。

输出 17


这样题目就完整了,并附带清晰的计算解释,适合用于平台题目上传。