最短路
GocNeverGiveUp
这个作者很懒,什么都没留下…
展开
-
HDU 3001 Travelling (三进制压缩最短路)
这道题真是不会做,但是kuangbin大佬把他放在搜索里面是有问题的,大家都叫这道题状压dp,这道题很明显地不符合最优子问题结构,是一点点由子问题更新上去的,但是子问题不见得最优,到达同一种状态可能有多种方式 ,我们选择不断更新求最优解把大佬写的代码重新敲了一边,认认真真分析了一下,发现下次还是不一定写的出来。。。为什么用dp数组的第二维表示结束位置,整个过程很像迪杰斯特拉,所以这好像就是...原创 2019-03-01 10:43:05 · 172 阅读 · 0 评论 -
POJ 2387 Til the Cows Come Home(dijkstra单源最短路径)
POJ - 2387挺简单的模板题,复习一下dijkstra的思路#include<iostream>#include<cstring>#include<cstdio>#include<algorithm>#include<vector>#include<set>#include<map>#原创 2019-02-20 15:35:46 · 134 阅读 · 0 评论 -
POJ 2253 Frogger + POJ 1797 Heavy Transportation (最短路最小化最大值/最大化最小值)
求从点1 到 2的所有路径中最长路径的最小值我们利用floyd或者迪杰斯特拉思路都是一样的,之前在更新的时候 被更新路径 = min(被更新路径, 两条新路之和)现在我们需要求最小化的最大值,只需要每次都从等效替代的几条路径中 取最小值即可,我们可以把这个过程放在松弛过程中进行#include<iostream>#include<cstring>#incl...原创 2019-03-01 20:42:46 · 203 阅读 · 0 评论 -
POJ 3268 Silver Cow Party (反向边dijkstra)
D - Silver Cow Party单源最短路,每条边为单向,因此去的时候是a->b = 5,回来的时候应该判别这条边为b -> a = 5,多加了一种判别边的方向#include<iostream>#include<cstring>#include<cstdio>#include<algorithm>#includ...原创 2019-03-02 13:41:04 · 163 阅读 · 0 评论 -
2010山东省赛E Emergency(Floyd变形)
每次利用释放的点更新floyd,相当于最多跑了一个完整的floyd没超时是真星https://v4t.jk1507.cn/contest.php?cid=46#include<iostream>#include<cstring>#include<cstdio>#include<algorithm>#include<vect...原创 2019-03-03 20:31:18 · 137 阅读 · 0 评论 -
POJ 3159 Candies(差分约束 dijkstra堆优化)
利用最短路的松弛特性,保证了差分约束中的B <= A + c,即d[v] <= d[u] + w,因此建立从A--B的一条边,边权为c即可,最终求从1-n的最短路即符合所有情况的最小总和,同理可以用最长路解决差分约束问题什么是差分约束: https://www.cnblogs.com/zhangmingcheng/p/3929394.htmldijkstra+优先队列快很多...原创 2019-03-23 16:12:51 · 207 阅读 · 0 评论 -
HDU 3416 Marriage Match IV(SAP最大流 + 最短路)
这道题用Dinic爆了,只有SAP才能卡的过去,听kuangbin说还没有能卡SAP的题目,SAP天下第一!思路:第一反应就是最大流,关键点在于去掉原图中无用的边,把所有符合最短路要求的边加入一个图中,流量设置为1,然后进行最大流即可通过这道题认识到了SAP的强大,也确认了所有最大流的模板没有问题,确立了SAP>>Dinic>>EK的战略思想#include&...原创 2019-03-26 18:20:11 · 164 阅读 · 0 评论 -
LightOJ 1074 Extended Traffic(SPFA判负环)
https://vjudge.net/problem/LightOJ-1074手动把和负环相连的点设置为答案为?,因为无限循环负环必然可以使得奖励为负数#include<iostream>#include<cstring>#include<cstdio>#include<algorithm>#include<vector>...原创 2019-03-23 21:23:13 · 201 阅读 · 0 评论 -
POJ 3311 Hie with the Pie(简单处理的状压dp)
POJ - 3311这道题,我还是不会!只能看题解才维持得了生活思路 : 利用二进制数串保存行走情况,由小到大逐步dp更新最优解,提前用floyd打好两点之间最短路的表,从每一个点开始遍历每一种状态,由于我们更新的是0-(1<<n-1),最后还差一个 0,也就是返回起点。没事的时候自己敲几遍状压dp,不信掌握不了!!!#include<iostream>...原创 2018-08-09 20:57:11 · 145 阅读 · 0 评论 -
SDNUOJ 1133.好人卡(SPFA 双向建边)
题目链接这道题员工需要到达所有的地方,然后再回来,求所有路程和的最小值,然后就很easy了?正向建边没问题, 在反向建边的时候卡了一会,不太清楚怎么回来,后来想明白了,反向建一下就能回来,总的来说还是一个模板题代码:#include<iostream>#include<cstring>#include<cstdio>#include<algorith...原创 2018-04-26 21:16:50 · 254 阅读 · 0 评论 -
SDNUOJ 1134.Facebook(Floyd)
题目链接运用Floyd建立联系,其实挺水的,一开始没有考虑全面导致wa了两次,做题太心急,其实两个人认识是有很多种不同的方式的,关键就在于如何找出最少的那一条,另外如何保存两个人需要经过多少个人介绍才能认识也是关键,这里我用一个二维数组num[][]保存介绍人数,剩下的问题迎刃而解代码:#include<iostream>#include<cstring>#includ...原创 2018-04-26 20:00:29 · 152 阅读 · 0 评论 -
最短路的四种算法
1、floyd 核心代码只有五行 for(int k=1; kfor(int i=1; ifor(int j=1; j{ if(map1[i][j]>map1[i][k]+map1[k][j]) map1[i][j]=map1[i][k]+map1[k][j]; } 这种算法可以找多源最短路,想知道a点到b点最短路,只能加入中间点来缩短路径,比如a到b 加入中间转载 2018-01-05 18:42:40 · 1745 阅读 · 1 评论 -
POJ 1847 Tram(简单最短路之Floyd)
N - TramPOJ - 1847Tram network in Zagreb consists of a number of intersections and rails connecting some of them. In every intersection there is a switch pointing to the one of the rails going o原创 2018-01-07 17:00:08 · 683 阅读 · 0 评论 -
POJ 2387 Til the Cows Come Home(最短路模板)**
A - Til the Cows Come HomePOJ - 2387 Bessie is out in the field and wants to get back to the barn to get as much sleep as possible before Farmer John wakes her for the morning milking. Bessie needs he...原创 2018-01-06 18:56:08 · 157 阅读 · 0 评论 -
HDU 1874 畅通工程续
畅通工程续:HDU - 1874这道题简单最短路Floyd就能ac,之前做过这类题感觉十分easy,保持好心情#include#include#include#include#include#include#include#include#includeusing namespace std;#define inf 0x3f3f3f3fint mapp[1005][1原创 2018-01-25 21:03:49 · 133 阅读 · 0 评论 -
POJ 3360 Cow Contest
H - Cow ContestPOJ - 3660感觉鹏哥出的题对我不太友善,水一会别的最短路,看到这道题懵逼好一会没想到和最短路有什么关系,然后敲出来自己认为正确的代码(实际wa):#include#include#include#include#include#include#include#include#includeusing namespace std;原创 2018-01-26 19:53:30 · 202 阅读 · 0 评论 -
HDU 2544 最短路(Floyd + Dijkstra + SPFA + 使用链式前向星优化的SPFA + 浅谈最短路)
自己最近状态莫名浮躁,有点急于求成了,鹏哥讲的最短路和最小生成树我都只会写最简单的算法,这么下去题是做多了,水平也不会有什么提高,强迫自己多去练习和掌握更好的方法吧这里写一道最短路水题的多种实现最短路HDU - 2544首先是相当容易实现的Floyd,我估计比赛基本用不到这种简单的算法,这里不多解释直接挂代码#include#include#include#include原创 2018-01-27 19:30:42 · 281 阅读 · 0 评论 -
HDU 2112 hdu today(巨坑的题)
HDU - 2112我感觉这题没什么好说的,就是坑人啊,这数据怎么想都有问题,他给的n条路里面居然可能不包括起点和终点别问我怎么知道的,我这么写的代码wa了得十遍,不包括起点和终点,题干你为什么不告诉我一声呢???然后这道题思路其实不难,如何把字符串转换成数字标记,即把数字与字符串联系起来便于最短路的遍历,不难想到map,如果不是有坑肯定一遍过了。。。#include#i原创 2018-01-29 19:18:20 · 402 阅读 · 0 评论 -
codeforces 25C Roads in Berlands(Floyd松弛优化)
https://codeforces.com/problemset/problem/25/C弗洛伊德变形题,之前做过一道类似的省赛的题,如果每次给定一条边都重新跑一遍floyd时间复杂度高达1e12上一道题是松弛一个点,这道题给定一条边,所以我们松弛两个点,即这条边的起点和终点#include<iostream>#include<cstring>#incl...原创 2019-03-31 19:53:26 · 217 阅读 · 0 评论