一点一点的进步

[Usaco2009 Jan]安全路经Travel dijkstra + 并查集

这题确实非常好!对最短路径可以有更深刻的理解 。Gremlins最近在农场上泛滥,它们经常会阻止牛们从农庄(牛棚_1)走到别的牛棚(牛_i的目的 地是牛棚_i).每一个gremlin只认识牛_i并且知道牛_i一般走到牛棚_i的最短路经.所以它 们在牛_i到牛棚_i之前的最后一条牛路上等牛...

2013-11-07 11:35:04

阅读数:1908

评论数:0

POJ 3169 差分约束

首先题目中的隐含条件是 d[i] 即d[i + 1] + 0 >= d[i] 然后对那ML个条件 d[y] - d[x] d[x] + w >= d[y] 对那MD个条件 d[y] - d[x] >= w -> d[y] + (-w) >=...

2013-08-22 21:49:29

阅读数:1873

评论数:0

[Usaco2006 Nov]Roadblocks第二短路 堆优化的dijkstra

贝茜把家搬到了一个小农场,但她常常回到FJ的农场去拜访她的朋友。贝茜很喜欢路边的风景,不想那么快地结束她的旅途,于是她每次回农场,都会选择第二短的路径,而不象我们所习惯的那样,选择最短路。 贝茜所在的乡村有R(1 如题,就是次短路而已,用SPFA或者Dij都行。 不过这次我使用了Dij,由于要...

2013-07-06 17:26:56

阅读数:2066

评论数:1

HDU 3760 Ideal Path 最短路+BFS

这题的话其实想是比较好像的,就是写起来代码比较多 题目大意就是给出了一个无向图,每条边有一个编号。 然后让我们求一条编号字典序最小的最短路 那么首先我们做两遍SPFA,分别求出起点到所有点的距离,以及终点到所有点的距离 这样我们就能判断某个点是否是最短路上的点 之后我们进行BFS ,其实...

2012-09-14 00:36:23

阅读数:1643

评论数:0

POJ 4370 0 or 1 图论模型的转化

这题的优点就在于模型的转化 转化完就是个非常简单的最短路了 显然,题目给的是一个0/1规划模型。 解题的关键在于如何看出这个模型的本质。 3个条件明显在刻画未知数之间的关系,从图论的角度思考问题,容易得到下面3个结论: 1.X12+X13+...X1n=1  于是1号节点的出...

2012-08-16 20:18:30

阅读数:657

评论数:0

HDU 4360 最短路变形

题目大意是 给一个n个点m条边的无向图。 每条边有权值和一个字母标号,字母标号有四种 'L' 'O' 'V' 'E' 现在要从1点到n点去 找求找到一条路径,路径按顺序构成了若干个LOVE 注意必须是完整的LOVE 然后要求有LOVE的的条件下路径最短,如果有多条最短路,找LOVE最多的...

2012-08-14 18:35:32

阅读数:1189

评论数:0

POJ 4046 Sightseeing 最短路

题意就不再赘述了 黑书上308页例1是极其相似的题。。。。 思路也一样 枚举每个点作为吃饭的地点。 每次以枚举的这个点为起点做最短路,途中不能走比它贵的点。 每次求出最短路后要更新我们的查询答案。更新其实也就是一行的样子。 假设查询的两个点有个最优的方案,那么路径上有某点是吃饭的地点,...

2012-08-13 20:36:19

阅读数:784

评论数:0

POJ 2112 二分图多重匹配+二分+floyd

题目意思不在赘述 二分图多重匹配一般都可以用网络流来做,只不过网络流的代码太长。 具体看代码把 #include #include #include #include #include #include #include #include #define MAXN 2...

2012-07-20 13:04:44

阅读数:792

评论数:0

POJ 3635 Full Tank? 最短路变形

题意:给出一张图,n 网上大部分的思路都是类似于dij的那种扩展。 首先定义一个二维数组dp。 dp[i][j] 表示走到i点剩余j个单位的汽油时的最小花费 然后维护一个优先队列。  每次有两种可扩展的状态,一是加一个单位的油,二是走向邻接点,然后不断的将状态加入优先队列中 #...

2012-06-26 15:15:53

阅读数:2116

评论数:0

POJ 3463 最短路 次短路

本题是求最短路和比最短路距离长1的次短路的个数,于是就用到了dijkstra 主要的改变就是数组都开到了二维,第二维用来表示是最短路还是次短路 比如d[][]数组和vis[][]数组 而cnt数组使用来存取最短路和次短路的次数 那么最外层的循环就要到2*n-1次了,其中n-1次是用来求最短...

2012-06-25 18:14:56

阅读数:3246

评论数:0

POJ 2449 Remmarguts' Date 第K短路 A* + SPFA

题目大意就是给出一个图,然后给出一个起点个一个终点,求这两点间的第K短路。 本题中是可以走重复的路的,所以如果一张图中有一个环的话,无论求第几短路都是存在的。 网上大部分的方法都是用A* + 最短路的方法做的。   对于A* ,估价函数 = 当前值+当前位置到终点的距离,即 F(p)...

2012-06-25 15:39:41

阅读数:5017

评论数:5

HDU 3991 最短路+最小路径覆盖

题目大意就是,有一个图,上面有一些顶点,代表一些城市,在某些时刻, 某个城市里会有人需要礼物, 哈利波特需要及时的将礼物送到,但是哈利每1秒只能走一个单位长度,所以他需要朋友的帮助,来使所有的人都能及时的收到礼物。问需要的最少的朋友个数。 那么看完题目后,实际上可以发现其跟路径覆盖非常有...

2012-04-10 22:43:57

阅读数:627

评论数:0

HDU 3986 最短路+枚举

这题HDU 1595 find the longest of the shortest 就是一模一样的 但是出现了重边,就比较恶心人了 然后就将输入的数据先排序,然后出现重边的肯定在一块,然后对每条边存储的是它最短的情况和次短的情况即可 /* ID: CUGB-wwj PROG: LAN...

2012-04-10 22:30:26

阅读数:747

评论数:0

BOJ 333 最小生成树+最短路

很裸的一个题吧,就是先求出一个最小生成树,然后求的同时把图给建好,然后枚举起点,求最短路。因为在树上求最短路必然是O(n)的,所以总的复杂度是O(n2)的 求最短路的时候囧了,直接写的SPFA,其实直接BFS就行了。不过明显写SPFA写习惯了。 当然这道题卡人的地方很猥琐,是精度。 用dou...

2012-03-03 16:26:57

阅读数:661

评论数:0

POJ 1716 Integer Intervals SPFA 差分约束

用数组dist[i]表示从点0到点i-1所包含的关键点的数目; 输入数据即可转化为:dist[b+1]-dist[a]>=2      =>    dist[a]-dist[b+1] 根据实际情况还有两个约束条件: dist[i+1]-dist[i] dist[i+1]-dis...

2012-02-05 01:20:00

阅读数:938

评论数:0

POJ 3013 Big Christmas Tree 最短路

题目大意是: 有一些点,每个点都有一个重量值,然后给出了一些边,每个边都有一个权值 最后让用一些边组成一棵树,使得花费最少,每个边(u,v)的花费=(边得所有子孙节点的重量和)*(该边的权值) 对于这个花费,可以看出,对于每条边(u,v),其花费就相当于每个在后面的结点都走了这个边一次, ...

2012-01-21 02:51:52

阅读数:1217

评论数:0

Codeforces Round #103 (Div. 2) D题 SPFA

题意就是求离源点距离为L的点的个数,点可以在节点上,也可以在路上,但是必须都是到源点的最短距离为L 用SPFA求一遍距离,然后扫描一遍点,再扫描一遍边 扫描边得时候注意了,有的边上有1个位置,有的边上有2个位置,并且要去重 /* ID: sdj22251 PROG: subset...

2012-01-19 02:31:44

阅读数:814

评论数:0

HDU 1595 find the longest of the shortest

这道题的题意就是有一个稠密图,一个人要从1走到N点,中间可能某一条路会断掉,求最短路最坏的情况, 也就是断掉某条路时,最短路径最长。 这道题,不难想到枚举删边求最短路,这种方法下,用SPFA无疑是最好的选择。 首先,用SPFA求出初始状态下的最短路,然后记录下最短路的路径,再枚举路径中的每条路...

2011-11-07 09:22:03

阅读数:1756

评论数:3

POJ 2607 Fire Station

又是一道最短路的题,为了提高效率,我用的邻接链表+SPFA做的,速度很快,0ms过的。 首先,初始化完dist数组后,对每个消防站作为起点都求一次最短路,期间不再初始化dist数组,这样最后得到的dist数组就是每个居民到最近的消防站的距离。 然后枚举每个点,每次求一下最短路,用其中的最大值比...

2011-10-04 13:32:32

阅读数:1406

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭