#S8U12P03. 各连通片的生成森林
各连通片的生成森林
各连通片的生成森林
难度:T2
【知识点:Kruskal最小生成树】
前置知识:本单元此前讲解的状态、边界与实现。
题目描述
原图可能不连通。在每个原有连通块内分别选边建一棵最小生成树,求这些树的总费用;孤立点贡献零。
输入格式
其中 为顶点数,顶点编号为 到 ; 为随后给出的带权边条数。每条带权边独占一行,依次为 ,表示从 到 的边及权值 ;无向边可双向通行,有向边只能从 到 通行。
输入、及条无向带权边。允许负权、自环和重边。
规则说明
生成树是选取原图中的一部分边,使所有顶点连通且不形成环;费用为选中边的权值之和。最小生成树是在所有生成树中总费用最小的一个。只有一个顶点时,不选边即可形成生成树,费用为 。
输出格式
每个原有连通块分别建最小生成树,输出这些树的总费用;孤立点贡献。
数据范围
,,,端点在..。
样例输入
1 1
1 1 -10
样例输出
0
样例输入 2
4 3
1 2 3
1 2 5
3 4 -2
样例输出 2
1
样例说明 2
两个原有连通块分别选择费用 与 的边,总费用为 。