#zXSCSybttg030104. 1489:构造完全图
1489:构造完全图
好的,我将题目中的数字和名称用 标出。
题目描述
对于完全图 ,若有且仅有一棵最小生成树为 ,则称完全图 是树 扩展出的。
给你一棵树 ,找出 能扩展出的边权和最小的完全图 。
输入格式
第一行 表示树 的点数。
接下来 行,每行三个整数 ,描述树 中的一条边 权值为 。
保证输入数据构成一棵树。
输出格式
输出一个整数,表示最小的完全图 的边权和。
数据范围
- 对于 的数据,
- 对于 的数据,
- 对于 的数据,,
输入样例
4
1 2 1
1 3 1
1 4 2
输出样例
12
样例解释
树 的边:
权
权
权
需要构造完全图 (即任意两点之间都要有边),使得 是 的唯一最小生成树,并且 的边权和最小。
已知树 已定,对于不在 中的边 ,它的权值必须大于 中 到 路径上的最大边权,否则 不是唯一最小生成树。
为了边权和最小,我们取该边权 = 路径最大边权 + ?不,可以等于路径最大边权 + 吗?不行,如果相等,就可能出现另一棵最小生成树(交换边)。所以必须严格大于。
所以对于每对 ,不在树上的边权值 = 中 到 路径上的最大边权 (取最小整数,但题目权值不要求整数?题中 是整数,我们取整数即可)。
计算:
- 边 :路径 ,最大边权 ,所以权值至少 (取 )。
- 边 :路径 ,最大边权 ,权值至少 (取 )。
- 边 :路径 ,最大边权 ,权值至少 (取 )。
树 总权值
加上新边权值和:
总完全图边权和 。
输出 。
这样题目就完整了,所有数字和名称都用 标出。