
最短路
zsyz_ZZY
Be the stronger one!
展开
-
luogu P3371 【模板】单源最短路径
题目传送门:https://www.luogu.org/problemnew/show/P3371题意:有n个点,m条边,一个起点st,求st到每个点的最短路径的长度。思路1:spfa。代码:#include<cstdio> #include<cstring> #include<queue> using namespace std; queue<int&g...原创 2018-04-16 20:15:55 · 316 阅读 · 0 评论 -
luogu P5340 [TJOI2019]大中锋的游乐场
背景: 昨晚志愿签名,然而镇区的同学感受到了开车两小时,签名一分钟。 题目传送门: https://www.luogu.org/problemnew/show/P5340 题意: 一个无向图,每一条边有一个长度,每一个点有一个值∈[−1,1]∈[-1,1]∈[−1,1],现在你要找到一条最短路径,使中间走过的点的权值和在任意时刻都∈[−k,k]∈[-k,k]∈[−k,k]。 思路: 好...原创 2019-06-29 10:25:34 · 201 阅读 · 0 评论 -
loj #3087. 「GXOI / GZOI2019」旅行者
背景: 最近检查代码的能力越来越弱。 题目传送门: https://loj.ac/problem/3087 题意: 给一个有向图,再给定kkk个点,求这kkk个点对之间两两最短路的长度的最小值。 思路: 这种最短路的题一种想法就是正反跑spfa\text{spfa}spfa。 这道题也是。 设disidis_idisi表示从这kkk个点出发到iii的最短路的长度。 显然disdisd...原创 2019-06-26 21:23:27 · 299 阅读 · 0 评论 -
luogu P2865 [USACO06NOV]路障Roadblocks
背景: 好久之前的题目了......... 题目传送门: https://www.luogu.org/problemnew/show/P2865 题意: 求严格次短路。 思路: 本来是一道spfaspfaspfa傻逼题。 仔细一想发现好像之前的思路有问题,那就来细讲一下吧。 disi,0dis_{i,0}disi,0表示最短路,disi,1dis_{i,1}disi,1表示次短路。...原创 2019-04-12 14:02:47 · 298 阅读 · 0 评论 -
luogu P2474 [SCOI2008]天平
背景: hehe...hehe...hehe... 题目传送门: https://www.luogu.org/problemnew/show/P2474 题意: 有些砝码,两两满足一些关系。有一个天平,现在选出A,BA,BA,B砝码,在剩下的砝码中任选两个x,yx,yx,y,使得满足A+B(>/=/<)x+yA+B(> /=/< )x...原创 2019-03-29 13:53:19 · 235 阅读 · 0 评论 -
luogu P3530 [POI2012]FES-Festival
背景: 继续肝… 题目传送门: https://www.luogu.org/problemnew/show/P3530 题意: 垃圾翻译。 有两种约束条件(每种有多个),对于每一个约束条件给出两个位置x,yx,yx,y,使得xxx位置和yyy位置上的值满足所对应的约束条件。现在你需要构造一个满足所有约束条件的序列(值域为[1,n][1,n][1,n]),使序列中不同元素的个数的尽可能大,求...原创 2019-03-30 09:50:52 · 437 阅读 · 0 评论 -
luoguP2387 [NOI2014]魔法森林
背景: 这一题是LCTLCTLCT,大雾… 题目传送门: https://www.luogu.org/problemnew/show/P2387 题意: nnn个点,mmm条边,每条边有两个权值,现在让你找到两个值使得它们分别大于从111到nnn的某一条路径上的两个值,要求这两个值的最小总和。 思路: 考虑最短路。 显然最短路无法维护两个值,不妨使得某一个值有序(升序),然后根据第二个...原创 2019-01-24 16:04:45 · 340 阅读 · 1 评论 -
luogu P2402 奶牛隐藏
题目传送门:https://www.luogu.org/problemnew/show/P2402题意:有n个点,m条边,每一个点一开始都有b1i头奶牛,并且都可以容纳b2i头奶牛,但是b1i有可能大于b2i,因此奶牛需要迁徙,迁徙的时间为路程的长度。求最小的时间,若无法完成,输出-1。思路:容易想到最短路floyd,因为可以与处理出从i点到j点的最短路(即时间花费)。然后发现时间好像不能直接求,...原创 2018-05-21 13:12:00 · 297 阅读 · 0 评论 -
luogu P1951 收费站_NOI导刊2009提高(2)
题目传送门:https://www.luogu.org/problemnew/show/P1951题意:有n个点,且每一个点都有一个权值,m条边,每一条边都有一个权值。现在求从st到ed做经过的路程和小于等于s并且所经过的路径中点的值最大的最小值是多少。思路:二分+spfa。二分所经过的点权值的上限,看看在这个范围内是否存在一条路径使得边权值和小于等于二分的mid,如果存在,那么这是一种可行解;否...原创 2018-04-27 21:15:39 · 325 阅读 · 0 评论 -
luogu P1730 最小密度路径
题目传送门:https://www.luogu.org/problemnew/show/P1730题意:有n个点,m条边的有向图。现在有q个询问,每个询问求x~y的最小密度是多少。注意:最小密度=所经过路径的点劝和/路径数。思路:类似于floyd的dp。f[i][j][l]表示从点i到j的路径经过l条路径的点权和最小的点权和。则可知用一个k来枚举i~j的中转点,则f[i][j][l]=min(f[...原创 2018-04-27 20:03:16 · 223 阅读 · 0 评论 -
P2939 [USACO09FEB]改造路Revamping Trails
题目传送门:https://www.luogu.org/problemnew/show/P2939题意:有n个点,m条边,现在选k条边使得它们的权值变为0,求1到n的最短路。思路:分层图裸题。搞一个k层的图,每两层间相同的点所连的边的权值为0。之后就可以在这个立体的图中跑最短路。然后我们发现这样或许有些浪费空间,所以建0边的过程可以省略,然后在最短路(跑dijkstra)过程中可以让它到达下一层的...原创 2018-04-25 16:35:44 · 323 阅读 · 0 评论 -
luogu P1462 通往奥格瑞玛的道路
题目传送门:https://www.luogu.org/problemnew/show/P1462题意:有n个点,m条边,某人的血量为k,每一个点会收取对应的价值,而这个人走每一条边也会扣除血,求他能安全走到终点所经过城市中被收取费用最多的城市所收取的费用为多少。思路:二分价值x,每一次将得到的价值小于x的去类似于建边(标记一下是否可以选这条边),再跑spfa看看血量是否满足要求即可。(比较容易,...原创 2018-04-12 15:56:31 · 355 阅读 · 0 评论 -
luogu P1522 牛的旅行 Cow Tours
题目传送门:https://www.luogu.org/problemnew/show/P1522题意:给出n个坐标,以及他们的连通情况,你可以再选任意两个点相连,求此时的最小的直径(图的直径:图中最远两点的距离)。思路:用floyd求出当前图的最短路情况。设p[i]表示点i连出去的最长的边,则dis[i]=max(f[i][j])(其中1≤j≤n,f[i][j]表示从点i到点j的最短路),进一步...原创 2018-04-12 15:42:51 · 258 阅读 · 0 评论 -
luogu P2149 [SDOI2009]Elaxia的路线
题目传送门:https://www.luogu.org/problemnew/show/P2149题意:有n个点,m条边(可能有向,可能无向,一条无向边算一条边),有起始点x1,y1;x2,y2,求从x1走到y1和x2走到y2的最短路的最长公共路径。思路:如图,设dis[x][y]表示从点x到点j的最短路。则有:dis[s][t]=dis[s][i]+dis[i][j]+dis[j][t]设点i与...原创 2018-04-12 15:24:23 · 181 阅读 · 0 评论 -
luogu P4768 [NOI2018]归程
背景: 今天真得好累。 题目传送门: https://www.luogu.org/problem/P4768 题意: nnn个点,mmm条边,有边权,一个表示长度,一个表示高度。 多组询问,每组询问问从xxx点出发,当前的积水高度是yyy,可以开车经过边的高度 ...原创 2019-09-08 19:41:25 · 338 阅读 · 0 评论