HDU 3371 Connect the Cities (Prim算法)
摘要:题意:n总共有多少个城市;m:有多少条路;k:相连的城市有多少组。对于K:输入2是表示有两组城市有已建好的路再输入一个T 表示 这T个城市相连。几map值 为0;连接:http://acm.hdu.edu.cn/showproblem.php?pid=3371View Code #include <iostream>using namespace std;#define INF 0x7ffffff#define MAX 500+10int n,m,k;int map[MAX][MAX];int used[MAX];int dis[MAX];int sum;int step[MAX]
阅读全文
hdu 1875畅通工程再续(Prim算法)
摘要:题意:找出一条路是所有岛都联通,如果找不到就输出oh!。解题思路:本体用的是Prim算法,模板里面加一个for判断是否存在一条路能走完所有岛。在输入时判断两个岛之间的距离。View Code #include <iostream>#include <cmath>using namespace std;#define INF 0x3fffffff#define MAX 100+10double map[MAX][MAX];int used[MAX];double dis[MAX];double sum;int n;int type;struct node{ double
阅读全文
hdu1102 Constructing Roads(Prim算法)
摘要:题意:给出几个村庄修路所花费的费用,现在再给出几组已经有路的村庄。输出这些村庄联通所要生成的最小费用。处理:把已经存在的路更新为0就行了。初始化map数组时初始为-1即可。连接:http://acm.hdu.edu.cn/showproblem.php?pid=1102View Code #include <iostream>#include <cmath>using namespace std;#define INF 0x3fffffff#define MAX 100+10int map[MAX][MAX];int used[MAX];int dis[MAX];int
阅读全文
hdu 1162 Eddy's picture(Prim算法)
摘要:题意:先算出没两点之间的长度,然后直接套用Prim模版就行。连接:http://acm.hdu.edu.cn/showproblem.php?pid=1162View Code #include <iostream>#include <cmath>using namespace std;#define INF 0x3fffffff#define MAX 100+10double map[MAX][MAX];int used[MAX];double dis[MAX];double sum;int n;struct node{ double i; double j;};vo
阅读全文
HDU 3790 最短路径问题 (dijkstra算法)
摘要:题意:找出输出的两点间最短路径,当最短路相等时输出最小费用.解题思路:定义一个结构体,里面定义两个数,一个记录权值,一个记录费用.dis数组是记录当前节点的权值和费用,map就不用说了.在松弛操作里面判断路径是否相等,若相等则判断其费用是否最小.本题还有一个很坑的地方,就是要判重,这个很重要.本题交了3次,第一次为wa,原因是没有判重,第二次是pe,一个很小的错误.View Code #include <iostream>using namespace std;const int INF=0x7ffffff;const int MAX=1000+10;int used[MAX];i
阅读全文
hdu 1879继续畅通工程(最小生成树Prim)
摘要:题意:计算出全省畅通需要的最低成本,本题是一个Prim算法的模版题,加一个判断就可以了.当该路短已经存在时就令其为0.连接:http://acm.hdu.edu.cn/showproblem.php?pid=1879View Code #include <iostream>using namespace std;const int INF=0x7ffffff;const int MAX=100+10;int map[MAX][MAX];int used[MAX];int dis[MAX];int sum;int n;void Prim(){ memset(used,0,sizeof
阅读全文