#P1015. 7unar的退休生活
7unar的退休生活
背景
7unar 最近继承了爷爷在星露谷的农场。
为了提高灌溉效率,最近他正在研究水管网铺设的问题……
描述
现在有 块田地需要铺设灌溉水管网。由于农场里障碍物较多,7unar 只得到了 条可行的水管路线——每条路线连接两块田地,并有一个铺设成本 。
他希望用最低的总成本让所有田地连通成一个灌溉网络,这样水就能从任意一块田流到任意另一块田了。
形式化的,给定一个 个节点 条边的无向带权连通图,求最小生成树(MST)的边权和。
最小生成树是指:选出 条边使图连通,且边权和最小。
输入格式
第一行两个整数 ,表示田地数与可行水管数。
接下来 行,每行三个整数 ,表示田地 和 之间可以铺设水管,花费为 。
保证图是连通的。
输出格式
一行一个整数,表示最小生成树的边权和。
样例
4 6
1 2 1
1 3 4
1 4 3
2 3 2
2 4 5
3 4 6
6
样例解释:选择边 (1,2,1)、(2,3,2)、(1,4,3),总花费 6。这是连接 4 个节点的最小可能值。
限制
,,。保证图连通。
对于 的数据,。
提示:Kruskal 算法——将所有边按权值从小到大排序,依次尝试加入 MST,若当前边的两端已经连通(用并查集判断)则跳过,否则加入。共选 条边。