a129-最小生成樹

zerojudge連結 http://zerojudge.tw/ShowProblem?problemid=a129

內容 :

給你一個加權的無向圖(weighted undirected graph),請問這個圖的最小生成樹(minimum spanning tree)的權重和為多少?

輸入說明 :

輸入可能包含多筆測試資料,以EOF作為結束。

每筆測試資料的第一列有兩個整數n,m(1<=n<=100,000;0<=m<=200,000),代表該圖的點數和邊數。

頂點的編號從0到n-1。

接下來有m列,每列用三個整數i,j,c(0<=i,j<n;c為int可儲存的非負整數)描述一條邊,i,j為兩個端點的編號,c為其權重。

輸出說明 :

對於每筆測試資料,請輸出最小生成樹的權重和。如果圖不連通,請輸出-1。

範例輸入 :

3 3

0 1 5

1 2 5

2 0 10

4 2

1 2 5

2 3 5

範例輸出 :

10

-1

提示 :

overflow..?

//范例测资已更正。——liouzhou_101

//thanks =P, shik

出處 :

(管理:shik)

解題策略

Kruskal演算法http://zh.wikipedia.org/wiki/%E5%85%8B%E9%B2%81%E6%96%AF%E5%85%8B%E5%B0%94%E6%BC%94%E7%AE%97%E6%B3%95