1 #include <iostream>
2 using namespace std;
3 const int maxn = 10000;
4 int a[maxn][maxn];
5 int v,e;
6 void prim(int v0) {
7 int flag[maxn] = {0};
8 int pos;
9 flag[v0] = 1;
10 for (int i = 0;i < v-1; i++) {
11 int min1 = 1000000;
12 for (int j = 0;j < v; j++) {
13 if (flag[j]) {
14 for (int k = 1;k < v; k++) {
15 if (a[j][k] < min1 && !flag[k] && a[j][k]) {
16 min1 = a[j][k];
17 pos = k;
18 }
19 }
20 }
21 }
22 flag[pos] = 1;
23 }
24 }
25 int main () {
26 int p,q;
27 cin >> v >> e;
28 for (int i = 0;i < e; i++) {
29 cin >> p >> q;
30 cin >> a[p][q];
31 a[q][p]=a[p][q];
32 }
33 prim(0);
34 }