hihoCoder 1098 最小生成树二·Kruscal算法
来源:互联网 发布:ghost恢复linux 编辑:程序博客网 时间:2024/05/16 19:24
题目链接:http://hihocoder.com/problemset/problem/1098
基本全裸最小生成树。
下面是AC代码:
#include<cstdio>#include<cstring>#include<algorithm>using namespace std;struct edge{ int x,y,cost;} ed[1000005];int pre[100005];int fin(int x){ if(x==pre[x]) { return x; } else { return pre[x]=fin(pre[x]); }}void join(int x,int y){ int t1=fin(x); int t2=fin(y); if(t1!=t2) { pre[t1]=t2; }}bool cmp(edge a,edge b){ return a.cost<b.cost;}int main(){ int n,m; while(~scanf("%d%d",&n,&m)) { for(int i=1; i<=n; i++) { pre[i]=i; } for(int i=0; i<m; i++) { scanf("%d%d%d",&ed[i].x,&ed[i].y,&ed[i].cost); } sort(ed,ed+m,cmp); int ss=0,sum=0; for(int i=0; i<m; i++) { if(fin(ed[i].x)!=fin(ed[i].y)) { join(ed[i].x,ed[i].y); ss++; sum+=ed[i].cost; } if(ss==n-1) { break; } } printf("%d\n",sum); } return 0;}
0 0
- hihoCoder 1098 : 最小生成树二·Kruscal算法
- [HihoCoder]#1098 : 最小生成树二·Kruscal算法
- hihoCoder 1098 最小生成树二·Kruscal算法
- hihocoder 最小生成树二·Kruscal算法
- hihoCoder - hiho一下 第二十七周 - A - 最小生成树二·Kruscal算法
- #1098 : 最小生成树二·Kruscal算法
- #1098 : 最小生成树二·Kruscal算法
- hihocdoer 1098_最小生成树二·Kruscal算法
- #1098 : 最小生成树二·Kruscal算法
- HIHO #1098 : 最小生成树二·Kruscal算法
- hiho 27 最小生成树二·Kruscal算法
- hiho1098 : 最小生成树·Kruscal算法
- hihoCoer 1098 : 最小生成树二·Kruscal算法 (并查集)
- kruscal最小生成树算法
- 最小生成树-Kruscal算法
- hiho 最小生成树二(Kruscal算法)
- hiho一下 第二十七周:最小生成树二·Kruscal算法
- hiho刷题日记——第二十七天最小生成树二·Kruscal算法
- intent.setAction的介绍
- 多进程使用pthread mutex
- 判断android SQLite中的表是否为空
- MySQL存储过程详解 mysql 存储过程
- GridControl根据条件设置每行中某单元格只读
- hihoCoder 1098 最小生成树二·Kruscal算法
- 在机器学习一书中SVM章节中遇到的问题
- 令人困惑的fitsSystemWindows
- 关于Android Studio测试时找不到设备的问题
- Linux 的中文化问题简介 -------------------------------------------------------------------------------- L
- unix系列系统镜像下载
- executor的状态
- 下载论文,电子书籍(中英文),专利,数据库和课件
- 通过pcl写入点云数据