[nbut 1405] bridge and island
来源:互联网 发布:java 调用ant 编辑:程序博客网 时间:2024/06/06 03:07
黑赵晓,我们特专业#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
int u[1000];
int v[1000];
int w[1000];
int p[1000];
int r[1000];
int n,m;
int cmp(const int i, const int j) //间接排序函数
{
return w[i] < w[j];
}
int find(int x)//并查集的find
{
return p[x] == x ? x : p[x] = find(p[x]);
}
int kruskal()
{
int ans = 0;
for(int i = 0; i < n; i++)//初始化并查集
{
p[i] = i;
}
for(int i = 0; i < m; i++)//初始化边序号
{
r[i] = i;
}
sort(r, r + m, cmp);//给边排序
for(int i = 0; i < m; i++)
{
int e = r[i];
int x = find(u[e]);
int y = find(v[e]);//找出当前边两个端点所在集合编号
if(x != y)//在不同集合,合并
{
ans += w[e];
p[x] = y;
}
}
return ans;
}
int main()
{
while(~scanf("%d %d", &n, &m))
{
memset(p, 0, sizeof(p));
memset(r, 0, sizeof(r));
for(int i = 0; i < m; i++)
{
scanf("%d %d %d", &u[i], &v[i], &w[i]);
}
printf("%d\n", kruskal());
}
return 0;
}
- [nbut 1405] bridge and island
- NBUT
- NBUT
- NBUT
- NBUT
- NBUT
- 【NBUT
- NBUT
- NBUT
- NBUT
- NBUT
- NBUT
- about bridge and gateway
- hdu 4640 Island and study-sister
- linux bridge and vlan explained
- csu 1548 Road And Bridge
- jzoj 1769 islands and bridge
- NBUT The Sum of F(x) and G(x)
- [noj1393] 哦妈咪妈咪吼
- NOJ [1060] Countless Core Computers
- [HDOJ 1556] Color the ball(线段树成段更新入门)
- nbut 1058 火烧赤壁 2
- 杨辉三角
- [nbut 1405] bridge and island
- [1411] TT要吃肉
- [NOJ 1137] The Running Man
- 如何自己构造ADO的ConnectionString
- 有关SIP中的PRACK的含义和使用
- 自然对数
- outStream.flush()
- ubuntu13.04 使用halt机器没有关机的解决办法
- Codeforces Round #139 (Div. 2) E. Unsolvable