Shortest Path
文章平均质量分 75
kdqzzxxcc
这个作者很懒,什么都没留下…
展开
-
第一道SPFA HDU2544 最短路
这道题以前A过,是用dijkstra算法A掉的。今天听了SPFA,重新写一遍。这次的邻接表是vector储存的,下次自己手写。嗯。题意很简单。给出N(商店数量)M(路) 然后是M条路。找出1到N的最短路,贴代码。#include #include #include #include #include #include #include #include #inc原创 2012-07-04 20:58:19 · 710 阅读 · 0 评论 -
HDU 3416 spfa + dinic
题意:求最短路的条数。思路:先求正反两次spfa,然后取最短路上的边加入到图中,跑一次dinic求出最大流即可。先说取最短路上的边。假设s是起点,t是终点,如果dis[s][i] + dis[j][t] + w[i][j] == dis[s][t] ,那么这条边(i,j)就在最短路上。将(i,j)加入图中,容量是1.最大流问题。从s到t一个流就代表一条最短路, 所以最大流就是其原创 2013-04-29 22:58:19 · 883 阅读 · 0 评论 -
POJ 2449 K-短路
(转)第K短路问题,大概意思就是给你N个点,M条边,边是有向的,给你每条边的边权,给你一个S起始点,T结束点,和一个K,求S到T的第K短路。SPFA+A*启发式搜索。说说启发式搜索吧:通常在解决问题的时候,我们需要用到搜索算法,由已知状态推出新的状态,然后检验新的状态是不是就是我们要求的最优解。检验完所有的状态实际上就相当于遍历了一张隐式图。遗憾的是,所有的状态组成的状态空间往往是原创 2012-09-20 15:09:31 · 3497 阅读 · 1 评论 -
HDU 4522 最短路
题目描述:给出列车的行驶路径,和每个路径是硬座还是软卧,并且给出硬座和软卧的不舒适度,求从起点到终点最小的不舒适度。思路:首先分别求出硬座和软卧从起点到终点的距离,最后比较不舒适度,当然这题得建2个图,一个是硬座的路径,一个是软卧的路径,得注意的是,当K= 1时,是硬座软卧都有,所以两边都得加进去。其他的没什么,就是最基础的最短路。比赛的时候没有好好看题=。=#include #in原创 2013-03-29 16:39:17 · 1165 阅读 · 0 评论 -
POJ 3767 I Wanna Go Home SPFA最短路
题意:给你N个点M条边。接下来M行s,e,l,分别表示s-e的路程是l(无向图)接下来输入N个数,分别表示第i个城市支持那个leader.(1和2)问:一个人从城市1出发到城市2,到达的过程中只能有一次跨越两个支持不同leader的城市,输出最短路程,或者-1;思路:一开始想在SPFA里面加个限制条件,来记录城市跨越的情况,但是貌似不好写。就DIY了一种想法。进行2次S原创 2012-08-13 17:09:19 · 753 阅读 · 0 评论 -
POJ 3225 次短路
次短路模版题。贴个代码#include #include #include #include #include #include #include #include #include #include #include #include #define PI acos(-1.0)#define Max 1000005#define inf 1<<28#define原创 2012-09-20 23:10:45 · 1122 阅读 · 5 评论 -
POJ 3463 Sightseeing 最短路+次短路
题意:给定一个有向图,问从起点到终点,最短路+比最短路距离长1的路的个数。思路:最短路+次短路。#include #include #include #include #include #include #include #include #include #include #include #include #define PI acos(-1.0)#def原创 2012-09-19 18:15:57 · 908 阅读 · 0 评论 -
POJ 3013 Big Christmas Tree 最短路
输入V,E;接下来V个数字代表每个节点的重量;接下来E行每行输入a,b,s;代表A-B距离为S,注意为无向图;求最短路。注意:数据范围,得开long long 。而且SPFA初始化的时候INF得大。一开始我用inf(1#include #include #include #include #include #include #include #include #in原创 2012-09-19 00:36:51 · 654 阅读 · 0 评论 -
POJ 1860 Currency Exchange bellman_ford
题意:有N个货币兑换所,每个兑换所兑换2种货币A和B。分别有汇率RAB,RBA,和回扣CAB,CBA;问是否可以通过货币之间的转化而盈利。思路:一开始以为是dijk求单源点距离然后判断最后的距离是否大于初始值,后来发现做不出来。看了discuss才发现用的是bellman_ford算法。好久没用了,都生疏了,就先去把以前的题看了一下,POJ3259。只不过3259求的是是否原创 2012-08-08 17:06:06 · 1011 阅读 · 1 评论 -
POJ 3259 Wormholes bellman_ford
题意:给出点到点的距离,和一些虫洞(即负距离),求解是否能形成负环思路:bellman_ford算法#include #include #include #include #include #include #include #include #include #include #include #include #define Max 2005#define原创 2012-08-08 15:20:53 · 643 阅读 · 0 评论 -
POJ 1511 Invitation Cards SPFA+正反邻接表
题意:给出P个人P个车站Q条路,每条路都是有向的。然后问你从1出发到达点(2-N)再从点(2-N)回来的最短总距离。思路:先对点1到(2-N)求一次最短路,可以得出点1到所有点的距离。然后再对反图从点1到(2-N)求一次最短路,可以求出所有点(2-N)到点1的距离。相加结果即为最短的路程。解题过程:其实思路很简单,因为注意到数据量实在太大了,10^6的点,所以邻接矩原创 2012-08-08 21:53:01 · 762 阅读 · 0 评论 -
POJ 1724 ROADS 有条件最短路
题意是给你K,N,R,分别代表BOB的钱。城市的数量和道路的数量接下来R行有向的路代表 X 到 Y 需要 L路程 花费C钱找出1-N的最短路并且花费不超过K;discuss里面说是有条件的最短路;优先队列+BFS,用到了邻接表,第一次写,终于理解了。。。。。#include #include #include #include #include #include原创 2012-07-10 18:26:34 · 1681 阅读 · 0 评论 -
HDU 4571 SPFA+DP
好题,长沙邀请赛的一道题。这种题还是蛮常见的,SPFA+DP优化,记得上次北大校赛就有一道。根据题意,我们可以虚拟两个超级源点和超级汇点,源点到所有点的距离都是这段距离加上参观的时间。所有点到汇点的距离就是该点到终点的距离。这样控制之后,对于终点就有2个选择了,路过或者参观。对于途中除起点终点以外的点,我们可以先进行一遍floyd,然后根据他们的val值进行连边,值是两点之间的距离原创 2013-08-20 10:03:44 · 826 阅读 · 0 评论