1 秒 / 测试点 · 512 MiB · 20 个测试点。
题目描述
给定一张包含 n 个结点 m 条边的带权连通无向图,结点依次以 1,2,...,n 编号,第 i 条边(1≤i≤m)连接结点 ui
与结点 vi,边权为 wi。
对于每条边,请你求出从图中移除该条边后,图的最小生成树中所有边的边权和。特别地,若移除某条边后图的最
小生成树不存在,则输出 −1。
输入格式
第一行,两个正整数 n,m,分别表示图的结点数与边数。
接下来 m 行中的第 i 行(1≤i≤m)包含三个正整数 ui,vi,wi,表示图中连接结点 ui 与结点 vi 的边,边权为 wi。
输出格式
输出共 m 行,第 i 行(1≤i≤m)包含一个整数,表示移除第 i 条边后,图的最小生成树中所有边的边权和。若移
除第 i 条边后图的最小生成树不存在,则输出 −1。
输入样例 1
15 521 2 432 3 343 4 152 5 263 1 8
输出样例 1
1142153-14-1510
输入样例 2
16 1021 2 632 3 343 1 453 4 564 5 875 6 286 4 193 2 4105 4 4113 3 6
输出样例 2
1152163174-15156177188159151015
数据范围
| 子任务编号 |
测试点占比 |
n |
m |
特殊性质 |
| 1 |
20% |
≤50 |
≤100 |
- |
| 2 |
30% |
≤105 |
≤105 |
n=m |
| 3 |
30% |
≤500 |
≤2×104 |
- |
| 4 |
20% |
≤105 |
≤105 |
- |
对于所有测试点,保证 1≤n≤105,1≤m≤105,1≤ui,vi≤n,1≤wi≤109。