HDU1123 还是畅通工程
来源:互联网 发布:南阳网络推广企业 编辑:程序博客网 时间:2024/05/22 09:02
prim算法
要点见注释
#include<iostream>#include<cstring>#include<cstdio>#include<cstdlib>#include<algorithm>using namespace std;#define maxn 100#define inf 0xfffffffint N; //总点数int d[maxn][maxn];//图int v[maxn];//已选标记int l[maxn];//点到已选点最短路径长度int prim(){ int ans=0;//结果 memset(v,0,sizeof(v));//初始化,清零 v[0]=1; l[0]=0;//已选(0,0)为起点 for(int i=1;i<N;i++) { l[i]=d[0][i]; } for(int i=1;i<N;i++) { int m=inf,temp; for(int j=0;j<N;j++) { if(!v[j]&&m>l[j]) { m=l[temp=j];//temp记录j值,下用 } } ans+=m; l[temp]=0;//temp v[temp]=1;//temp for(int i=0;i<N;i++)//更新l数组 { l[i]=min(l[i],d[temp][i]); } } return ans; } int main(){ int p,q; //只负责接受数据,不做任何处理 for(int i=0;i<N;i++)//或者memset(d,inf,sizeof(d)); { for(int j=0;j<N;j++) { d[i][j]=inf; } } while(scanf("%d",&N)&&N) { for(int i=0;i<N;i++) { for(int j=i+1;j<N;j++) { scanf("%d %d %d",&p,&q,&d[i][j]); d[j][i]=d[i][j];//易忽视点 } } printf("%d\n",prim()); } return 0;}
0 0
- HDU1123 还是畅通工程
- 还是畅通工程 hdu1233
- hdu1233还是畅通工程
- hdu1233还是畅通工程
- HDu1233 还是畅通工程
- HDOJ1233-还是畅通工程
- hdu1233还是畅通工程
- 还是畅通工程hdu1233
- HDU1233还是畅通工程
- HDOJ 还是畅通工程
- 还是畅通工程hdoj1233
- HDU_1233 还是畅通工程
- 还是畅通工程
- hdoj1233 还是畅通工程
- hdoj1233 还是畅通工程
- hdu1233还是畅通工程
- 还是畅通工程
- hdu1233-还是畅通工程
- IndexedDB入门
- java中给出一个主线程要join子线程的例子
- React Fiber是什么
- UVA
- linux课堂知识第5弹
- HDU1123 还是畅通工程
- 科锐课堂笔记:2017/4/11 类的const与static
- Shell脚本的多种执行方式解析
- android生命后期图
- 数据泵参数汇总与各种导出导入规则
- 训练赛之 最短路
- PowerDesigner导出SQL时自动生成注释
- 扯蛋的密码规则
- linxu自动化编译之git安装和使用