POJ 1258 (简单最小生成树,prim算法)
来源:互联网 发布:ps是什么网络用语 编辑:程序博客网 时间:2024/06/01 10:37
POJ1258
题意:输入n行每行代表第n个村庄分别与其它村庄的距离,求联系每个村庄的最小距离.
这道题完全可以当做prim算法的模板去写POJ2421,POJ 1251,POJ 2560,POJ 1789,POJ 2485.
最小生成树关键在于建图。
#include<cstdio>#include<cstring>#define M 210#define INF 0x3f3f3f3fint map[M][M],low[M],visit[M]; //low[i]是一个点到下一个点的最短距离int prim(int n){ int pos,result = 0,i,j,min; memset(visit,0,sizeof(visit)); visit[1] = 1,pos = 1; for(i = 1;i <= n; i++) if(i != pos) low[i] = map[pos][i]; for(i = 1;i < n; i++){ min = INF; for(j = 1;j <= n; j++) if(visit[j] == 0 && min > low[j]){ min = low[j]; pos = j; } result += min; visit[pos] = 1; for(j = 1;j <= n; j++) if(visit[j] == 0 && low[j] > map[pos][j]) low[j] = map[pos][j]; } return result;}int main(){ int n,p; while(scanf("%d",&n) != EOF){ int i,j; for(i = 1;i <= n; i++) for(j = 1;j <= n; j++){ scanf("%d",&p); map[i][j] = p; } printf("%d\n",prim(n)); } return 0;}
0 0
- POJ 1258 (简单最小生成树,prim算法)
- POJ-1258 最小生成树 prim算法
- POJ 1258 -- 最小生成树(prim算法)
- poj-1258 Agri-Net(最小生成树 Prim算法)
- 【最小生成树】(模板-prim算法)poj 1258
- POJ 1258 : 最小生成树(Prim)
- POJ 1251 最小生成树prim算法
- poj 2485 prim算法最小生成树
- 最小生成树Prim算法 Highways POJ
- poj 1251 最小生成树 prim算法
- POJ 1258-Agri Net 最小生成树Prim算法
- POJ 1258 Agri-Net 图论 prim算法 最小生成树
- POJ 1258 Agri-Net(最小生成树prim算法)
- 【最小生成树之prim算法】POJ-1258---Agri-Net
- 最小生成树 ———prim算法 poj 1258
- POJ 1258 Agri-Net 最小生成树 Prim算法
- POJ 1258 Agri-Net 最小生成树 Prim算法
- POJ 1258 Agri-Net(最小生成树prim算法)
- [POJ1837]-Balance
- 页面回车操作
- ios网络框架
- 修改C:\WINDOWS\system32\drivers\etc\hosts 文件有什么作用
- http://www.cnblogs.com/90zeng/
- POJ 1258 (简单最小生成树,prim算法)
- tomcat源码解析(四)——tomcat基本结构简述
- 反转链表
- eclipse下使用动态库、静态库相应的配置
- hdu5791
- JVM总结
- LabVIEW时间格式字符串输出
- 策略模式
- Quartz Cron表达式 在线生成器