CODEVS 1231最优布线问题
来源:互联网 发布:百度地图api php开发 编辑:程序博客网 时间:2024/05/17 07:18
#include<stdio.h>#include<iostream>#include<algorithm>using namespace std;int n,m,aa,bb,cc,cur=0,p[1000100],k=0;long long ans=0;struct node{ int u,v,value;}a[1000100];int cmp(struct node aa,struct node bb){ return aa.value<bb.value;}int find(int i){ return p[i]==i?i:p[i]=find(p[i]);}int main(){ scanf("%d%d",&n,&m); for(int i=1;i<=m;i++){ scanf("%d%d%d",&aa,&bb,&cc); a[cur].u=aa; a[cur].v=bb; a[cur].value=cc; cur++; } sort(a,a+cur,cmp); for(int i=1;i<=n;i++) p[i]=i; for(int i=0;i<m;i++){ int uu=find(a[i].u); int vv=find(a[i].v); if(vv!=uu){ ans+=a[i].value; p[uu]=vv; } } printf("%lld",ans);//注意!!!!!long long 型用%lld输出!!!!! return 0;}
题解:基本也是一个裸的Kruskal算法,与CODEVS 1078 最小生成树不同的是,本题并不是所有的点都是可以连通的。但事实上,在编写程序时与CODEVS 1078 最小生成树并没有什么太大的区别,主要的不同点就是–我们在用a[]结构体构造图的时候只连接了可以连接的点,仅此而已。
0 0
- 【codevs 1231】 最优布线问题
- CODEVS 1231最优布线问题
- Codevs 1231 最优布线问题
- CODEVS 1231 最优布线问题
- codevs 1231 最优布线问题
- Codevs 1231 最优布线问题
- 【codevs 1231】最优布线问题
- 【Codevs】1231 最优布线问题 && kruskal模板
- codevs 1231_最优布线问题_最小生成树
- codevs 1231 最优布线问题(最小生成树模板)
- codevs 1231 最优布线问题 并查集 解题报告
- 1231 最优布线问题
- WikiOI 1231 最优布线问题
- wikioi 1231 最优布线问题
- wikioi 1231 最优布线问题
- 1231 最优布线问题 -- kruskal
- 1231 最优布线问题 kruskal
- 最优布线问题
- linux
- 关联关系和依赖关系
- 以过来人的身份聊聊实习招聘、秋招、春招(给应届毕业生)
- python核心编程第6章习题答案
- 随手记:序列化要彻底
- CODEVS 1231最优布线问题
- 项目尾声(ListView+CheckBox进行批量删除)
- jsp bathpath
- URAL 1269
- 慕课网首页仿写—新闻中心
- 构造方法,初始化块和静态初始化块
- 初识Hadoop及其名词解释---Hadoop学习(1)
- Http 与 Socket 区别
- Joda-Time 简介