#P14080. [GESP202509 八级] 最小生成树

[GESP202509 八级] 最小生成树

最小生成树(Minimum Spanning Tree)

题目描述

给定一张包含 nn 个结点 mm 条边的带权连通无向图,结点依次以 1,2,,n1,2,\ldots,n 编号,第 ii 条边(1im1\le i\le m)连接结点 uiu_i 与结点 viv_i,边权为 wiw_i

对于每条边,请你求出从图中移除该条边后,图的最小生成树中所有边的边权和。特别地,若移除某条边后图的最小生成树不存在,则输出 1-1本题可以对每条边单独移除后重新跑Kruskal算法求MST

输入格式

第一行,两个正整数 n,mn,m,分别表示图的结点数与边数。

接下来 mm 行中的第 ii 行(1im1\le i\le m)包含三个正整数 ui,vi,wiu_i,v_i,w_i,表示图中连接结点 uiu_i 与结点 viv_i 的边,边权为 wiw_i

输出格式

输出共 mm 行,第 ii 行(1im1\le i\le m)包含一个整数,表示移除第 ii 条边后,图的最小生成树中所有边的边权和。若移除第 ii 条边后图的最小生成树不存在,则输出 1-1

样例输入 #1

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

样例输出 #1

14
15
-1
-1
10

样例输入 #2

6 10
1 2 6
2 3 3
3 1 4
3 4 5
4 5 8
5 6 2
6 4 1
3 2 4
5 4 4
3 3 6

样例输出 #2

15
16
17
-1
15
17
18
15
15
15

数据范围

对于 20%20\% 的数据,n50n\le 50m100m\le 100

对于另外 30%30\% 的数据,n=mn=m

对于另外 30%30\% 的数据,n500n\le 500m2×104m\le 2\times 10^4

对于所有测试点,保证 1n1051\le n\le 10^51m1051\le m\le 10^51wi1091\le w_i\le 10^9

知识点与难度

本题涉及的知识点从属于 GESP八级(最小生成树),难度等级:省选/NOI