hdu 1863 畅通工程prim算法
来源:互联网 发布:软件方案怎么写 编辑:程序博客网 时间:2024/05/18 01:38
//prim算法#include<iostream>#include<string.h>using namespace std;#define data 1000000000int graph[210][210],n,m,num,lowcost[210],vis[210];int prim(int s){int mindata,sum=0,i,j,u;num=0;memset(vis,0,sizeof(vis));for(i=1;i<=m;i++){lowcost[i]=graph[s][i];}lowcost[s]=0;vis[s]=1;for(i=1;i<m;++i){mindata=data;for(j=1;j<=m;++j){if(!vis[j]&&lowcost[j]<mindata){u=j;mindata=lowcost[j];}}if(mindata==data)break;vis[u]=1;sum+=lowcost[u];num++;for(j=1;j<=m;++j){if(lowcost[j]>graph[u][j])lowcost[j]=graph[u][j];}}return sum;}int main(){int i,j,pa,pb,cost;while(cin >> n >> m&&n){for(i=0;i<=m;i++)for(j=0;j<=m;j++)graph[i][j]=data;//注意初始化的时候应该从0开始,否则prim函数里面会报错for(i=1;i<=n;i++){cin >> pa >> pb >> cost;graph[pa][pb]=graph[pb][pa]=cost;}int x=prim(1);if(num!=m-1) cout << '?' << endl;else cout << x << endl;}return 0;}
- hdu 1863 畅通工程prim算法
- HDU 1863 畅通工程(prim算法)
- HDU 1863 畅通工程 (Prim算法)
- HDU 1863畅通工程【Prim】
- HDU 1863 畅通工程(最小生成树prim算法)
- HDU - 1863 - 畅通工程 (最小生成树!!prim算法!!)
- HDU 1863 畅通工程 prim算法 最小生成树
- HDU 1863畅通工程(最小生成树)(prim算法)
- #HDU 1233 还是畅通工程 【Prim算法】
- HDU 1879 继续畅通工程 (Prim算法)
- hdu 1863 畅通工程 (prim)
- HDU-#1863 畅通工程(Kruskal & Prim)
- HDU 1863--畅通工程【Prim && kruskal】
- hdu 1863畅通工程(prim,邻接矩阵)
- hdu 1863 畅通工程【kruskal & prim】
- hdu 1863 畅通工程 kruskal || prim
- hdu 1863 畅通工程(prim+kruskal)
- HDU 1863 畅通工程 (prim + kruskal)
- 【OpenGL API】 glLineWidth
- CSS中zoom:1的作用 ,小标签大作用
- HTML中小meta
- Flash发布iOS应用全攻略(一)——如何在Flash里发布iOS应用
- C#.net中使用Opencv
- hdu 1863 畅通工程prim算法
- C++_多继承与虚基类
- 标识符的作用域--程序级>文件级>类级>函数级>块级
- 揭示宇宙奥秘的13个常数
- jQuery提升性能技巧及个人总结
- 关于DESTDIR
- POJ 1035 Spell checker
- jquery在FF下设定回车事件
- C语言笔记流程控制