[專題-圖論]最短路
阿新 • • 發佈:2018-06-09
輸出 用途 鄰接表 currency tro htm hdu 3416 arr 例題
kuangbin最短路專題鏈接:https://cn.vjudge.net/contest/231324
專題題解
寫題解的就是比較好的題了
1 / 3 | POJ 2387 | Til the Cows Come Home |
1 / 1 | POJ 2253 | Frogger 找間隔最小的路徑 |
1 / 6 | POJ 1797 | Heavy Transportation |
1 / 1 | POJ 3268 | Silver Cow Party |
1 / 1 | POJ 1860 | Currency Exchange |
1 / 1 | POJ 3259 | Wormholes |
1 / 1 | POJ 1502 | MPI Maelstrom |
1 / 4 | POJ 3660 | Cow Contest 傳遞閉包的應用 |
1 / 7 | POJ 2240 | Arbitrage 判斷是否存在可循環圈 |
1 / 6 | POJ 1511 | Invitation Cards 往返最短路 |
1 / 3 | POJ 3159 | Candies 差分約束 |
0 / 0 | POJ 2502 | Subway 輸入的處理很折磨人 |
1 / 1 | POJ 1062 | 昂貴的聘禮 |
1 / 3 | POJ 1847 | Tram |
1 / 9 | LightOJ 1074 | Extended Traffic 註意連通性 |
0 / 4 | HDU 4725 | The Shortest Path in Nya Graph 超時 |
1 / 9 | HDU 3416 | Marriage Match IV 最短路+最大流 找各最短路的所有邊 |
1 / 4 | HDU 4370 | 0 or 1 考慮連通性 |
1 / 5 | POJ 3169 | Layout 差分約束 |
各算法的用途&原理&例題
Dijskra O(mlogn)
[筆記-圖論]Dijkstra
用途 | 原理 | 例題 |
正權單源最短路 | 略 | 略 |
往返最短路 | 把邊反向,再跑一次最短路 | POJ-1511 Invitation Cards, CF EducationalRound40-D Fight Against Traffic |
差分約束系統 | 不等式各變量系數為一時,可看做滿足最短路的條件 | POJ-3159 Candies, POJ-3169 Layout |
找各節點間隔最小的路徑 | 類似動態規劃,轉移前一節點的間隔狀態 | POJ-2253 Frogger |
找有限制的最短路 | 類似動態規劃,轉移前一節點的限制狀態,在松馳前做判斷 | POJ-1062 昂貴的聘禮 |
判斷某條邊是否被最短路包含 | 求往返最短路,滿足distA[from]+distB[to]+e.dist==distA[B] | CF EducationalRound40-D Fight Against Traffic, HDU-3416 Marriage Match IV |
找AB間各路徑最大邊權的最小值的最小值 | 松馳操作改為取最小/最大即可 | UVA-10048 Audiophobia |
BellmanFord O(kn)
[筆記-圖論]Bellman-Ford
用途 | 原理 | 例題 |
判斷是否存在可循環圈 | 略 | POJ-2240 Arbitrage |
含負權的單源最短路 | 略 | 略 |
Floyd O(n^3)
[筆記-圖論]Floyd
用途 | 原理 | 例題 |
含負權的多源最短路 | 雖然不能判斷可循環圈,但不存在的情況下是最短路? | 略 |
有向圖傳遞閉包 | 就是間接可達 | UVA-247 Calling Circles, POJ-3660 Cow Contest |
找AB間各路徑最大邊權的最小值的最小值 | 松馳操作改為取最小/最大即可 | UVA-10048 Audiophobia |
需要註意的地方
每次做題時要考慮的
- 是否存在可循環圈
- 連通性
- 數據範圍 & 數據規模 & 浮點數精度
- 預處理邊權,點集,邊個數等
- 用鄰接表
- 別手打輸出形式-_-
- 一定要首先考慮好int還是longlong, 不然寫好後修改會出現奇奇怪怪的WA
[專題-圖論]最短路