图论
如雨星空
推荐系统在读研究生
展开
-
poj3255Roadblocks之dijkstra解法
分析:到某个顶点的v次短路径要么是到u的最短路径+u->v的边,要么是到u的次短路径加上u->v的边.因此,我们可以在dijkstra求最短路径的基础上进行改进,在更新最短路径的过程中,记录并更新次短路径./** Filename: code.cpp* Created: 2017-10-08* Author: wyl6 *[mail:17744454343@163原创 2017-10-08 15:45:55 · 759 阅读 · 0 评论 -
poj2253 frog之最小生成树prim解法
分析:对节点间关系进行分析,可以发现,从Freddy到Fiona节点的每次跳跃都是在寻找最短路径,这和prim算法生成最小生成树的方法是一致的.所以可以直接在prim算法上求解答案.首先看下prim模板int cost[INF][INF];//边int used[INF];int mincost[INF];//已参与生成的所有节点到节点v的最小值int v;int prim(){原创 2017-10-03 15:10:45 · 351 阅读 · 0 评论 -
POJ2349Arctic Network之最小生成树kruskal解法
Arctic Network Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 23142 Accepted: 7110 DescriptionThe Department of National Defence (DND) wishes to connect several northern outp原创 2017-10-03 17:42:10 · 329 阅读 · 0 评论 -
poj3723Conscription之dijkstra解法
题意:招纳n个女兵,m个男兵,给出r个亲密关系.当已招募的人中有一些关系亲密的人就可以减少费用,此时招募费用是10000-亲密关系.分析:男兵女兵间的亲密关系可以抽象为一条带权的边,问题就转化为了求权重和最小的树,反过来就是求最小生成树.考虑用dijkstra,在输入时把权值取负或用10000减去它获取新权值,然后男兵女兵序号有重复的,所以需要女兵或男兵区间右移下/** Filename:原创 2017-10-08 17:48:37 · 255 阅读 · 0 评论 -
最小生成树prim模板
prim的基础模板和利用堆优化后的模板原创 2017-10-09 20:27:54 · 544 阅读 · 0 评论 -
hdu1102之prim(堆优化)解法
hdu1102prim解法优先队列堆优化原创 2017-10-09 20:39:25 · 628 阅读 · 0 评论 -
poj1860之Bellman-Ford解法
Currency Exchange Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 31398 Accepted: 11916 DescriptionSeveral currency exchange points are working in our city. Let us suppose tha原创 2017-08-09 15:30:50 · 530 阅读 · 0 评论 -
poj3259Wormholes Bellman-Ford
Wormholes Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 53846 Accepted: 20049 DescriptionWhile exploring his many farms, Farmer John has discovered a number of amazing wormh原创 2017-08-09 17:03:56 · 258 阅读 · 0 评论 -
poj3268Silver Cow Party之dijkstra解法
Silver Cow Party Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 23651 Accepted: 10789 DescriptionOne cow from each of N farms (1 ≤ N ≤ 1000) conveniently numbered 1..N is goi原创 2017-08-10 22:26:42 · 274 阅读 · 0 评论 -
poj1847Tram的dijkstra解法
题意: 首先输入n,a,b 然后输入n行,第i(1 =< i <= n)行的第一个数字表示从这站出发的列车数目Ki,然后接下来的Ki个数表示目的车站,其中第一个数表示默认目的地,如果需要到其他站需要改变switch,求从a到b需要改变switch的最小次数 分析:设默认目的地cost为0,其他为1,那么就变成求最短路径的问题,直接代入公式./** Filename:原创 2017-08-11 16:24:08 · 278 阅读 · 0 评论 -
poj1125 floyd解法
Stockbroker Grapevine Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 37400 Accepted: 20793 DescriptionStockbrokers are known to overreact to rumours. You have been contracted原创 2017-09-27 16:13:07 · 302 阅读 · 0 评论 -
poj 3984 bfs+路径还原
分析:路径还原相当于在搜索的过程中保留一个关系链,在这里搜索到最后一步后,输出第一步到最后一步经过的节点,最先考虑的是栈的存储 分析:代码主要分为2部分:宽搜和路径还原#include <cstdio>#include <cstdlib>#include <iostream>#include <stack>#include <queue>#include <algorithm>#inc原创 2017-09-27 20:12:18 · 319 阅读 · 0 评论 -
POJ2253 Frogger之Floyd解法
题意:题意很好懂,就是要求一条路径,使得路径中最大的那一步是所有路径中最大步的最小值分析:设d[][]为从i到j的所有路径中,每条路径的最大步的最小值.对于d[i][j] 来说,考虑一个新的节点d[i][k]+d[k][j], 都要满足d[i][j]大于d[i][k]和d[k][j]中的最大值,否则就不更新.ps:现在编译规则越来越严了,sqrt和pow太容易出错了,以后要注意格式要规范…#incl原创 2017-09-28 13:32:54 · 579 阅读 · 0 评论 -
poj2485 highways 之prim解法
分析:prim模板题,直接水过/** Filename: code.cpp* Created: 2017-10-03* Author: wyl6 *[mail:17744454343@163.com]* Desciption: Desciption*/#include <cstdio>#include <cstdlib>#include <iostr原创 2017-10-03 11:40:43 · 231 阅读 · 0 评论