poj 1789 prim
来源:互联网 发布:2017年服装行业数据 编辑:程序博客网 时间:2024/04/29 06:12
这题是prim的水题。。。
注意:
1.读懂题,读了好半天,明白是啥意思
2.注意数据范围,map[2001][2001]必须放在堆里面。。。否则RUNTIME error
代码:
#include<stdio.h>#include<stdlib.h>#include<iostream>#define MAX 8#define MAX_SIZE_OF_VEXS 2001using namespace std;typedef struct{ int vexs[MAX_SIZE_OF_VEXS]; int arcs[MAX_SIZE_OF_VEXS][MAX_SIZE_OF_VEXS]; int vex_num; int arc_num;}graph;typedef struct{ int lowcast; int adjvex;}cl;char* s[2001];graph g;cl close[MAX_SIZE_OF_VEXS];int prim(int u){ int sum = 0; for(int i = 1;i <= g.vex_num; i++) { close[i].adjvex = u; close[i].lowcast = g.arcs[i][u]; } for(int q = 1;q <= g.vex_num-1; q++) { int min = MAX,k; for(int j = 1;j <= g.vex_num;j++) { if(close[j].lowcast>0 && min > close[j].lowcast) { k = j; min = close[j].lowcast; } } close[k].lowcast = 0; sum += g.arcs[(close[k].adjvex)][k]; for(int j = 1; j <= g.vex_num; j++) { if(close[j].lowcast > g.arcs[j][k]) { close[j].lowcast = g.arcs[j][k]; close[j].adjvex = k; } } } return sum;}int comp(char* s,char* r){ int sum = 0; for(int i = 0;i <= 6;i++) { if(s[i] != r[i]) sum++; } return sum;}int main(){ while(cin>>g.vex_num && g.vex_num) { for(int i = 1;i <= g.vex_num;i++) { s[i] = (char*)malloc(sizeof(char)*10); cin>>s[i]; } for(int i = 1;i <= g.vex_num; i++) for(int j = i;j <= g.vex_num; j++) g.arcs[i][j] = g.arcs[j][i] = (i == j)?0:comp(s[i],s[j]); cout<<"The highest possible quality is 1/"<<prim(1)<<".\n"; } return 0;}
- POJ 1789 Prim
- poj 1789 prim
- poj 1789 prim
- poj 1789 prim
- POJ 1789 Truck History Prim
- poj-1789 Truck History-Prim
- poj 1789 Truck History(Prim)
- POJ--1789 Truck History【prim】
- Truck History Poj 1789(Prim)
- POJ 1789:Truck History 【Prim】
- POJ 1789 Truck History【Prim】
- POJ 1789 Truck History (Prim)
- poj--1789--Truck History(prim)
- poj 1789 Truck History (Prim)
- poj 1789 Truck History(prim)
- POJ - 1789----Truck History(prim)
- Truck History( poj 1789 prim)
- poj 1789 Prim最小生成树
- 虽然计划赶不上变化 我还是想订个计划 不想糊糊涂涂的过日子.
- SQLite(一):初探
- Ultra MPEG-4 Converter 6.0.0103 破解版
- 破解WINRAR4.2
- 制作根文件系统:make[1]: *** [miscutils/ubi_tools.o] 错误 1 --来源于网络
- poj 1789 prim
- undefined symbol: __gxx_personality_v0解决办法(转载)
- 今天认识了下partition by 和group by
- Core Java (十六) 内部类
- javascript显示完整时间
- myeclipse安装svn插件的多种方式
- 如何区分国内上网环境中不同的人为网络故障
- Android 复习 listview中的几个参数的含义
- 快速排序算法