还是畅通工程
来源:互联网 发布:青苹果申报数据库 编辑:程序博客网 时间:2024/06/06 02:12
某省调查乡村交通状况,得到的统计表中列出了任意两村庄间的距离。省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可),并要求铺设的公路总长度为最小。请计算最小的公路总长度。
当N为0时,输入结束,该用例不被处理。
31 2 11 3 22 3 441 2 11 3 41 4 12 3 32 4 23 4 50
35
prim代码:
#include<cstdio>#include<cstring>#include<iostream>using namespace std;const int inf=0x3f3f;int map[101][101],dis[101],book[101];int main(){ int m; while(cin>>m) { if(m==0) break; memset(book,0,sizeof(book)); int n=m*(m-1)/2; for(int i=1;i<=m;i++) { for(int j=1;j<=m;j++) { if(i==j) map[i][j]=0; else map[i][j]=inf; } } int a,b,c; for(int i=1;i<=n;i++) { cin>>a>>b>>c; map[a][b]=c; map[b][a]=c; } for(int i=1;i<=m;i++) dis[i]=map[1][i]; int cont=1,ans=0,u; book[1]=1; while(cont<m) { int minn=inf; for(int i=1;i<=m;i++) { if(minn>dis[i]&&!book[i]) { minn=dis[i]; u=i; } } book[u]=1; ans+=dis[u]; cont++; for(int j=1;j<=m;j++) { if(!book[j]&&dis[j]>map[u][j]) dis[j]=map[u][j]; } } cout<<ans<<endl; } return 0;}
阅读全文
0 0
- 还是畅通工程 hdu1233
- hdu1233还是畅通工程
- hdu1233还是畅通工程
- HDu1233 还是畅通工程
- HDOJ1233-还是畅通工程
- hdu1233还是畅通工程
- 还是畅通工程hdu1233
- HDU1233还是畅通工程
- HDOJ 还是畅通工程
- 还是畅通工程hdoj1233
- HDU_1233 还是畅通工程
- 还是畅通工程
- hdoj1233 还是畅通工程
- hdoj1233 还是畅通工程
- hdu1233还是畅通工程
- 还是畅通工程
- hdu1233-还是畅通工程
- HDOJ_1233 还是畅通工程
- centos7的配置
- Java编程的整理
- 阻塞队列
- B -Escape CodeForces
- hdu1995-递推
- 还是畅通工程
- android studio logcat 中文乱码解决
- 2017四川省赛总结
- Centos7 防火墙使用
- NLTK学习笔记(二):文本、语料资源和WordNet汇总
- Flex中的ViewStack
- php学习笔记1——php基础
- evaluate-reverse-polish-notation
- 黑白主题切换