poj 最短路径题目总会

求最短路基本的算法:
1>Dijkstra算法
2>Bellman-Ford算法
3>Floyd算法
4>Floyd-Warshall算法
5>Johnson算法
6>A*算法

题目:

1.poj1062
昂贵的聘礼
(中等)

此题是个经典题目;用Dijkstra即可;但是其中的等级处理需要一定的技巧;

要理解好那个等级制度;这个处理好,基本就是裸体Dijkstra;

2 poj1125
Stockbroker Grapevine
(基本)

这个是简单Floyd,需要求出的是每对顶点之间的最短路径;

然后找到那个所需时间最小的那个人中的所需时间;

3,poj
1502 MPI Maelstrom
(基本)【已经解决之,Dijkstra直接水之】

这题是邻接矩阵的Dijkstra就可以解决的;

直接水之;

4,poj
1511 Invitation Cards
(中等)

这个时间上有点卡了。Dijkstra,bellman可能会TLE;用SPFA+邻接表可以过的;

有个地方注意一下就好了,每个志愿者回来的时候的最短路径;将原图的每条边反向一下,对端点1再来

SPFA就可以来;

正向图的结果+逆向图的结果就是所求;

5,poj
1724 ROADS
(中等偏上)

题意是在一定的coins的限制下的最短路径;可以用Dijkstra的变形;

用邻接边来存储边;

松弛过程中用优先队列(边的长度短的优先)来存储边,将符合条件(coins限制)的边都加入优先队列;

直到找到延伸到最后一个顶点即可终止循环; 因为最先到达的一定是最短路径,在coins的限制条件下;

6,poj1797
Heavy Transportation
(中等)

从端点1到端点n的能够通过的最大载重;

可以用Dijkstra变形一下,在松弛时要改变一下松弛的条件;

另外results数组中存储的不是每个点到1的最短距离,而是能够通过的最大载重;

这题的输出让我灰常无语,以后输出要看清啦。。

7,poj
1860   currency exchange
(基本)

这个是bellman_ford的经典应用;

一个套汇问题,就是通过一系列的货币交换能够到达价值增加的目的;

就是类似判断有没有负权回路;

类似与poj2240,poj3259;

8,poj2240
Arbitrage
(基本)http://hi.baidu.com/lewutian

这个是poj1860的简化版本;就不多说了。。

直接bellman水之;

9,poj
2253 Frogger
(中等)

和poj1797类似,所求的正好相反,也是Dijkstra的变形经典应用;

改变一下松弛时的条件;

10,poj
2387   Till the Cows come home
(基本)

注意其中可能有重边;然后就是赤裸的Dijkstra;

11,poj
2502    Subway
(基本)

可以用Floyd来搞定,关键是哪个边的存储,存储后就是灰常简单的Floyd了;

12,poj
3013 Big Christmas Tree
(中等)

这个要有个重要的转化;首先price of an edge will be (sum of weights of all descendant nodes) ×
(unit price of the edge).

这句指出每条边的代价为该边所有子孙节点权值之和乘以该边的权值。

换个角度就是每个节点的代价为该节点到根节点的所有边的权值乘以该节点的权值。

其实就是求从端点1到每个点的最短路径*改点的权值,,然后之和;

貌似,数据有点大,用SPFA吧。。

13,poj
3037 Skiing
(中等)

这个题有点意思;刚开始想用bfs;

后来发现对于每个点从该点出发的速度是恒定的,例如从a->b->c;则c出发的速度就是V*2^(A-B)*2^(B-C)=V*2^(A-C);

所以直接求最短路径就可以了,边也知道了。用spfa。。

14,poj
3159 Candies
(中等)

我靠,这个题时间卡的好紧啊!我的spfa是1400ms,时限是1500ms,汗一下;

题意有点难理解,想明白了,其实就是求一个从1->n的最短路径;

15,poj
3259 Wormholes
(简单)

这个题和poj1860,poj3259基本一样;

求负权回路是否存在;用bellman直接水之;

16,poj
3268 Silver Cow Party
(基本)

Dijkstra可以直接过的。。只不过求的有变化;

17,poj
3377Ferry Lanes
(中等)

这题可以用最短路做的;但是我看和导论那个流水线那个dp例子灰常像;

于是就dp过了,其中有个地方需要注意,dp的话,就是可以需要检查两端的情况;

有兴趣的可以两种都试试;

18,poj
3615 Cow Hurdles
(中等)

Floyd求出每个端点之间的路径中最大高度是最小的那个最大高度;

要改变一下松弛的条件;

19,poj
3660 Cow Contest
(中等)

这个题有点topsort的意思,其实可以用Floyd来做,而且用的很巧妙;

邻接矩阵中用0,1,2来分别存储关系不能确定,在之前,在之后;

然后判断每个点哪行,如果除了对角线处,没有0出现的话,那么它的位置就可以确定了。。

poj 最短路径题目总会,布布扣,bubuko.com

时间: 2024-10-19 05:59:15

poj 最短路径题目总会的相关文章

poj 动态规划题目列表及总结

此文转载别人,希望自己能够做完这些题目! 1.POJ动态规划题目列表 容易:1018, 1050, 1083, 1088, 1125, 1143, 1157, 1163, 1178, 1179, 1189, 1208, 1276,1322, 1414, 1456, 1458, 1609, 1644, 1664, 1690, 1699, 1740(博弈),1742, 1887, 1926(马尔科夫矩阵,求平衡), 1936, 1952, 1953, 1958, 1959, 1962, 1975,

最短路径题目

1797 Heavy Transportation. //是最短路径的变形:每条路上的是容量,需要对dijkstra进行变形//现在是:比较路径上载重量的大小,取小者,在所有的小的情况中取一个大的继续拓展 #include<iostream> #include<cstring> #include<cmath> #include<algorithm> #include<stack> #include<cstdio> #include&l

POJ 1028题目描述

Description Standard web browsers contain features to move backward and forward among the pages recently visited. One way to implement these features is to use two stacks to keep track of the pages that can be reached by moving backward and forward.

POJ 1035题目描述

Description You, as a member of a development team for a new spell checking program, are to write a module that will check the correctness of given words using a known dictionary of all correct words in all their forms. If the word is absent in the d

ACM训练方案-POJ题目分类

ACM训练方案-POJ题目分类 博客分类: 算法 ACM online Judge 中国: 浙江大学(ZJU):http://acm.zju.edu.cn/ 北京大学(PKU):http://acm.pku.edu.cn/JudgeOnline/ 杭州电子科技大学(HDU):http://acm.hdu.edu.cn/ 中国科技大学(USTC):http://acm.ustc.edu.cn/ 北京航天航空大学(BUAA)http://acm.buaa.edu.cn/oj/index.php 南京

转载:poj题目分类(侵删)

转载:from: POJ:http://blog.csdn.net/qq_28236309/article/details/47818407 按照ac的代码长度分类(主要参考最短代码和自己写的代码) 短代码:0.01K–0.50K:中短代码:0.51K–1.00K:中等代码量:1.01K–2.00K:长代码:2.01K以上. 短:1147.1163.1922.2211.2215.2229.2232.2234.2242.2245.2262.2301.2309.2313.2334.2346.2348

POJ 3613 Cow Relays (Floyd + 矩阵快速幂 + 离散化 神题!)

Cow Relays Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 5611   Accepted: 2209 Description For their physical fitness program, N (2 ≤ N ≤ 1,000,000) cows have decided to run a relay race using the T (2 ≤ T ≤ 100) cow trails throughout

[2016-01-27][POJ][1679][The Unique MST]

C - The Unique MST Time Limit:1000MS     Memory Limit:10000KB     64bit IO Format:%I64d & %I64u Submit Status Practice POJ 1679 Description Given a connected undirected graph, tell if its minimum spanning tree is unique. Definition 1 (Spanning Tree):

POJ 1155 树状dp

TELE Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 3856   Accepted: 2054 Description A TV-network plans to broadcast an important football match. Their network of transmitters and users can be represented as a tree. The root of the tre