luogu P3366 模板 最小生成樹

2021-10-18 16:37:09 字數 612 閱讀 1181

就是求乙個圖的最小生成樹,如果不能連通,就輸出orz

就是模板題,按著模板做就完事了。

最小生成樹其實有點貪心的思想,就是每次都連現有權值最小而且兩邊不屬於同乙個連通塊的邊。

然後不停這樣連下去,直到整個圖都連通了。

至於看兩邊屬不屬於同乙個連通塊我們可以用並查集來搞。

#include

#include

using

namespace std;

struct road a[

200001];

int n, m, fa[

5001

], num;

long

long ans;

bool

cmp(road x, road y)

intfind

(int now)

intmain()

if(num == n -1)

printf

("%lld"

, ans)

;else

printf

("orz");

return0;

}

LuoguP3366 模板 最小生成樹

如題,給出乙個無向圖,求出最小生成樹,如果該圖不連通,則輸出orz 第一行包含兩個整數n m,表示該圖共有n個結點和m條無向邊。n 5000,m 200000 接下來m行每行包含三個整數xi yi zi,表示有一條長度為zi的無向邊連線結點xi yi 輸出包含乙個數,即最小生成樹的各邊的長度之和 如...

3366 模板 最小生成樹(Prim)

如題,給出乙個無向圖,求出最小生成樹,如果該圖不連通,則輸出orz 輸入格式 第一行包含兩個整數n m,表示該圖共有n個結點和m條無向邊。n 5000,m 200000 接下來m行每行包含三個整數xi yi zi,表示有一條長度為zi的無向邊連線結點xi yi 輸出格式 輸出包含乙個數,即最小生成樹...

P3366 模板 最小生成樹

如題,給出乙個無向圖,求出最小生成樹,如果該圖不連通,則輸出orz 輸入格式 第一行包含兩個整數n m,表示該圖共有n個結點和m條無向邊。n 5000,m 200000 接下來m行每行包含三個整數xi yi zi,表示有一條長度為zi的無向邊連線結點xi yi 輸出格式 輸出包含乙個數,即最小生成樹...