prime(最小生成树)——POJ 1789
来源:互联网 发布:移动数据打开没有网络 编辑:程序博客网 时间:2024/05/16 08:51
对应POJ题目:点击打开链接
#include<cstdio>#include<cstdlib>#include<cmath>#include<map>#include<queue>#include<stack>#include<vector>#include<algorithm>#include<iomanip>#include<cstring>#include<string>#include<iostream>const int MAXN=2000+10;const int INF=1<<30;using namespace std;int G[MAXN][MAXN];int cp[MAXN];int dis[MAXN];int sum;char truck[MAXN][10];void prim(int n, int v){ int i,j; for(i=0; i<n; i++){ dis[i]=G[v][i]; cp[i]=v; } for(i=1; i<n; i++){ int min=INF; int k=v; for(j=0; j<n; j++){ if(dis[j] && dis[j]<min){ min=dis[j]; k=j; } }//printf("%d <-> %d = %d\n", cp[k], k, min);//打印两顶点与两点间权值 sum+=dis[k];//计算最短路径和 dis[k]=0;//加入集合 for(j=0; j<n; j++){ if(G[j][k] && G[j][k]<dis[j]){//更新候选边 dis[j]=G[j][k]; cp[j]=k; } } } printf("The highest possible quality is 1/%d.\n", sum);}int Distance(char const *str1, char const *str2){const char *p;const char *q;int cnt=0;for(p = str1, q = str2; *p && *q;)if(*p++ != *q++) cnt++;return cnt;}int main(){ //freopen("in.txt","r",stdin); int n; while(scanf("%d", &n), n)//节点为0~n-1 { sum=0; int i,j; for(i=0; i<n; i++) scanf("%s", truck[i]); for(i=0; i<n; i++){//初始化图 for(j=0; j<n; j++){ if(i==j){ G[i][j]=0; continue;} G[i][j]=INF; } }for(i=0; i<n; i++){for(j=i+1; j<n; j++){int len = Distance(truck[i], truck[j]);G[i][j] = G[j][i] = len;}} prim(n, 0); } return 0;}
0 0
- prime(最小生成树)——POJ 1789
- poj 1789 (最小生成树 Prime)
- POJ 1789 Truck History(最小生成树--prime)
- poj 1789Truck History(最小生成树 prime)
- poj 1251Jungle Roads (最小生成树:prime+krusual)
- poj 1258 Agri-Net(最小生成树 prime算法)
- POJ 2349 Arctic Network(最小生成树--prime)
- POJ 3026 Borg Maze(最小生成树--prime+BFS)
- POJ 1258 Agri-Net(最小生成树--prime 水)
- poj 1751 (最小生成树 Prime+kruskal 路径输出)
- POJ 1751 Highways(最小生成树prime算法)
- poj 1287 heap+prime 最小生成树
- poj 1287 (最小生成树 Prime + kruskal )
- poj 2421 (最小生成树 Prime+kruskal)
- poj 2349(Prime + Kruskal 最小生成树)
- poj 1287(最小生成树prime算法)
- 最小生成树—prime算法
- Jungle Roads(prime——最小生成树)
- java中的数学乘法基础性问题
- CodeForces 492E Vanya and Field
- 平衡二叉树(解惑)
- 移动互联领域内的新兴力量
- linux下 mongodb安装和启动过程
- prime(最小生成树)——POJ 1789
- shell 中如何调用python代码的返回值
- 《运动的小球》开启
- Upper-body detection 源码配置及运行
- H2通用缓存加载(1)——listener
- JAVA WEB知识总结之一--response&&request
- 解读uCos中优先级判定表OSUnMapTbl原理
- 简单的css js控制table隔行变色
- SOLR 中 Schema.xml 的filedType 的一些属性的理解