最短路
文章平均质量分 56
最短路
EschatonAyane
风会带走我曾经存在过的证明
展开
-
【51nod P2673】最短路径【堆优化Dijk】
linklinklink分析:这种屑数据真的要堆优化吗 floyedfloyedfloyed都可过CODE:#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>#include<queue>#define reg registerusing namespace std;typedef long long ll;const int N=..原创 2022-01-20 11:15:44 · 339 阅读 · 0 评论 -
【洛谷P2865】Roadblocks G【次短路】
Problem linkProblem~linkProblem link分析:次短路经典题disi,1dis_{i,1}disi,1 表示到iii的最短路 disi,2dis_{i,2}disi,2 表示到iii的次短路 更新最短路前 把次短路更成最短路 再更新新的更新时不能用 disxdis_xdisx 代指 q.top.disq.top.disq.top.dis 因为可能是到xxx的最短路 或次短路注意边可以重复走CODE:#include<iostre..原创 2021-12-25 11:41:43 · 568 阅读 · 0 评论 -
【洛谷P3106】Dueling GPSs S【最短路 变式】
Problem linkProblem~linkProblem link分析:以nnn为起点 跑两次spfaspfaspfa 记录两个GPSGPSGPS的最短路径最后再做一遍spfaspfaspfa对于统计不在最短路上 可以先建边权为222的图 跑最短路 遇到相同的−1-1−1即可CODE:#include<iostream>#include<cstdio>#include<cstring>#include<algorith..原创 2021-12-25 09:38:30 · 221 阅读 · 0 评论 -
【洛谷P3003】Apple Delivery S【Dijk+堆】
Luogu linkLuogu~linkLuogu link分析:最短路看先走到PA1PA_1PA1近还是PA2PA_2PA2近 记短的距离为dis1dis1dis1然后分别以更近的点为起点 走到另一个点 记距离为dis2dis2dis2答案即 dis1+dis2dis1+dis2dis1+dis2stlstlstl小根堆不要用firstfirstfirst存下标!!!CODE:#include<iostream>#include<cstdio..原创 2021-12-24 21:28:18 · 561 阅读 · 0 评论 -
【洛谷P3946】ことりのおやつ【最短路】
分析:直接上spfaspfaspfa松弛时先看雪是否过厚 再选择入队CODE:#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<queue>using namespace std;typedef long long ll;const int N=5e5+5;int n,m,s,t,g,q,tot;int vis[..原创 2021-12-18 11:02:41 · 73 阅读 · 0 评论 -
【洛谷P3831】回家的路【分层图最短路】
Problem linkProblem~linkProblem link分析:大意:每个点之间距离为222 给出mmm个点可以转向 费用为111 问最短路分层图最短路上下两层对应点距离为111 层内就连222即可 然后spfaspfaspfaCODE:#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<q..原创 2021-12-11 10:05:26 · 276 阅读 · 0 评论 -
【洛谷P1948】Telephone Lines S【分层图 最短路】
Luogu linkLuogu~linkLuogu link分析:题解区咋都是二分spfa?spfa?spfa? 分层图最短路就做完了注意这个求的是最长路上的最小值 所以把dijdijdij改一下就可以了CODE:#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>#include<queue>using namesp..原创 2021-11-18 20:36:38 · 410 阅读 · 0 评论 -
【洛谷P4822】冻结【分层图最短路】
Luogu linkLuogu~linkLuogu link分析:分层图最短路然后注意可以使用000 ~ kkk次SpellCardSpellCardSpellCard 最后要在000 ~ kkk中取minminminCODE:#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<queue>using..原创 2021-11-16 21:16:14 · 248 阅读 · 0 评论 -
【洛谷P4568】飞行路线【分层图最短路】
Luogu linkLuogu~linkLuogu link分析:分层图最短路免费飞kkk次 相当于将图分成kkk层 从i−1i-1i−1到iii连一条费用为000的无向边第iii层图内就正常连边然后跑从sss到t+n×kt+n\times kt+n×k的最短路即可CODE:#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#i.原创 2021-11-16 20:22:12 · 268 阅读 · 0 评论 -
【洛谷P7297】Telephone G【堆优化 Dijkstra】
link\textcolor{pink}{link}link分析:不用分层图 暴力做法就是 连边跑DijkstraDijkstraDijkstra但问题在于建图O(n2)O(n^2)O(n2) 那可以直接用给的矩阵 用一个新表记录pi,jp_{i,j}pi,j品种iii 第jjj个奶牛的位置对于松弛过的点 就可以不松弛了 然后跑小根堆优化DijkstraDijkstraDijkstraCODE:#include<iostream>#include<cstdio>#.原创 2021-08-19 21:35:48 · 79 阅读 · 0 评论 -
【洛谷P1099】树网的核【最短路】
Luogu link\textcolor{pink}{Luogu~link}Luogu link分析:看到nnn很小 可以考虑用floydfloydfloyd预处理每对点的最短路枚举点对 假设路径为核 若路径长<=s<=s<=s 再枚举其他点到该路径的max{dis}max\{dis\}max{dis} 此时ans=min{dis}ans=min\{dis\}ans=min{dis}题目中给出核可能为点 所以不能忽略i=ji=ji=j的情况kkk到路径的...原创 2021-08-17 11:35:06 · 111 阅读 · 0 评论 -
【洛谷P4408】[NOI2003] 逃学的小孩【树的直径,spfa】
linklinklink分析:ans=ans=ans=树的直径+max{min{+max\{min\{+max{min{其余点到树直径两端的距离}}\}\}}}两遍spfaspfaspfa或bfsbfsbfs就行了最优解是从C−>A−>BC->A->BC−>A−>B 或C−>B−>AC->B->AC−>B−>A因为ABABAB必走 剩下的距离就是要满足min{CA,CB}min\{CA,CB\}min{CA,CB}最大 这样.原创 2021-08-11 22:00:00 · 75 阅读 · 0 评论 -
【洛谷AT838】直径【最短路】
link\textcolor{gray}{link}link分析:AAA图直径和BBB图直径 求多源最短路 就是max{disi}max\{dis_i\}max{disi}如果求出的最小答案比直径还小 ansansans就是直径CODE:#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>#include<queue>#define i..原创 2021-08-11 19:32:47 · 83 阅读 · 0 评论 -
【Ybt OJ】[图论 第3章] 最短路径
「「「图论」」」第333章 最短路径目录:A.单源最短路径B.判断负环C.最优贸易D.汽车加油A.A.A. 例题111 单源最短路径洛谷linklinklink分析:最短路模板 这不是弱化版 dijkstra+dijkstra+dijkstra+堆优化即可也可以把普通spfaspfaspfa的queuequeuequeue改成priorityqueuepriority_queuepriorityqueue就过了CODE:#include<iostream>#inc原创 2021-03-06 09:13:33 · 177 阅读 · 0 评论 -
【洛谷P1073】最优贸易【spfa+链表+反图】
题目描述C国有 n个大城市和 m 条道路,每条道路连接这 n个城市中的某两个城市。任意两个城市之间最多只有一条道路直接相连。这 m 条道路中有一部分为单向通行的道路,一部分为双向通行的道路,双向通行的道路在统计条数时也计为1条。C国幅员辽阔,各地的资源分布情况各不相同,这就导致了同一种商品在不同城市的价格不一定相同。但是,同一种商品在同一个城市的买入价和卖出价始终是相同的。商人阿龙来到 C国...原创 2020-01-17 16:09:29 · 653 阅读 · 0 评论 -
【2019 CSP-JのT4】[洛谷P5663]加工零件【最短路 · 变式】
题目描述linklinklink凯凯的工厂正在有条不紊地生产一种神奇的零件,神奇的零件的生产过程自然也很神奇。工厂里有 n 位工人,工人们从 1∼n 编号。某些工人之间存在双向的零件传送带。保证每两名工人之间最多只存在一条传送带。如果 x 号工人想生产一个被加工到第 L(L>1) 阶段的零件,则所有与 x 号工人有传送带直接相连的工人,都需要生产一个被加工到第 L−1 阶段的零件(但 x 号工人自己无需生产第 L−1 阶段的零件)。如果 x 号工人想生产一个被加工到第 1 阶段的零件,则所有与原创 2020-11-28 12:27:43 · 1336 阅读 · 2 评论 -
【洛谷8.23模拟赛T2】最优路线【Floyed】
题目描述题目一个 n 个点 m 条边的无重边无自环的无向图,点有点权,边有边权,定义一条路径的权值为路径经过的点权的最大值乘边权最大值。求任意两点间的权值最小的路径的权值。输入格式第一行两个整数 n,m,分别表示无向图的点数和边数。第二行 n 个正整数,第 i 个正整数表示点 i 的点权。接下来 m 行每行三个正整数 u i,v i ,w i ,分别描述一条边的两个端点和边权。输出格式n 行每行 n 个整数,第 i行第 j 个整数表示从 i 到 j 的路径的最小权值,如果从 i 不能原创 2020-08-23 19:59:43 · 1369 阅读 · 1 评论 -
【洛谷 P1119】灾后重建【Floyed最短路】
题目背景题目BBB地区在地震过后,所有村庄都造成了一定的损毁,而这场地震却没对公路造成什么影响。但是在村庄重建好之前,所有与未重建完成的村庄的公路均无法通车。换句话说,只有连接着两个重建完成的村庄的公路才能通车,只能到达重建完成的村庄。题目描述给出BBB地区的村庄数NNN,村庄编号从000到N−1N−1N−1,和所有MMM条公路的长度,公路是双向的。并给出第i个村庄重建完成的时间tit iti,你可以认为是同时开始重建并在第tit iti 天加粗样式重建完成,并且在当天即可通车。若tit it原创 2020-08-19 10:00:39 · 706 阅读 · 0 评论 -
【洛谷P2384】最短路 【最短路模板 dijkstra spfa】
题目背景狗哥做烂了最短路,突然机智的考了 Bosh 一道,没想到把 Bosh 考住了…你能帮 Bosh 解决吗?题目描述给定 n 个点的带权有向图,求从 1 到 n的路径中边权之积最小的简单路径。输入格式第一行读入两个整数 n,m,表示共 n 个点 m 条边。 接下来 m 行,每行三个正整数 x,y,z,表示点 x 到点 y 有一条边权为z的边。输出格式输出仅包括一行,记为所求路径的...原创 2020-02-04 15:50:09 · 1466 阅读 · 0 评论 -
【洛谷P1144】 最短路计数【spfa+记忆化搜索】
题目描述给出一个N个顶点M条边的无向无权图,顶点编号为1-N。问从顶点1开始,到其他每个点的最短路有几条。输入格式第一行包含2个正整数N,M,为图的顶点数与边数。接下来M行,每行2个正整数x,y,表示有一条顶点x连向顶点y的边,请注意可能有自环与重边。输出格式共N行,每行一个非负整数,第i行输出从顶点1到顶点i有多少条不同的最短路,由于答案有可能会很大,你只需要输出 ans mod 1...原创 2020-01-19 16:10:47 · 1677 阅读 · 0 评论 -
【SSL 1613】最短路径问题【最短路 Bellman-Ford算法】
Description平面上有n个点(N<=100),每个点的坐标均在-10000~10000之间。其中的一些点之间有连线。若有连线,则表示可从一个点到达另一个点,即两点间有通路,通路的距离为两点直线的距离。现在的任务是找出从一点到另一点之间的最短路径。Input输入文件short.in,共有n+m+3行,其中:第一行为一个整数n。第2行到第n+1行(共n行),每行的两个整数x和y...原创 2020-01-17 16:35:38 · 627 阅读 · 0 评论 -
【SSL 1624】小萨的烦恼【最短路 Floyed】
Description圣诞节又要到了!小萨希望和自己心仪的MM一起出去度过一个浪漫的的圣诞节。他进行了详尽的准备,找到了N个很适合他们去约会的好地方,但无奈小萨和他的MM都是初三学校,晚上必须回学校上晚修,没有足够的时间让他们走遍每一个地方。迫于无奈,小萨选择了一个最合适的地方S。小萨打算和他的MM一起步行到那个地方,那样他们就有很多时间来聊天玩乐,但是无奈时间有限,小萨决定坐公共汽车过去。然而...原创 2020-01-16 21:21:13 · 612 阅读 · 0 评论 -
【洛谷P1346】电车【最短路 Floyed】
题目描述在一个神奇的小镇上有着一个特别的电车网络,它由一些路口和轨道组成,每个路口都连接着若干个轨道,每个轨道都通向一个路口(不排除有的观光轨道转一圈后返回路口的可能)。在每个路口,都有一个开关决定着出去的轨道,每个开关都有一个默认的状态,每辆电车行驶到路口之后,只能从开关所指向的轨道出去,如果电车司机想走另一个轨道,他就必须下车切换开关的状态。为了行驶向目标地点,电车司机不得不经常下车来切换...原创 2020-01-16 19:59:08 · 226 阅读 · 0 评论 -
【洛谷P3371】【模板】单源最短路径【FLOYED Spfa 最短路】
题目描述:如题,给出一个有向图,请输出从某一点出发到所有点的最短路径长度。输入格式:第一行包含三个整数 n,m,s分别表示点的个数、有向边的个数、出发点的编号。接下来 m 行每行包含三个整数 u,v,w表示一条 u →v 的,长度为 w 的边。输出格式:输出一行 n 个整数,第 i 个表示 s 到第 i 个点的最短路径,若不能到达则输出 2^31-1。输入输出样例:输入:4 6 ...原创 2020-01-17 20:21:57 · 541 阅读 · 1 评论 -
【SSL 1762】工厂的烦恼【Floyed 最短路】
Description某工厂发现厂里的机器在生产产品时要消耗大量的原材料,也就是说,有大量的原材料变成了废物。因此厂里想找出消耗原材料最大的一条生产线路进行改造,以降低成本。厂里的生产线路是一个有向无环网络,有N台机器分别代表网络中的N个结点。弧< I,j >(i < j)表示原材料从机器i传输到机器j的损耗数量。Input第一行是两个整数N,M(N<=100,M&l...原创 2020-01-16 08:46:10 · 197 阅读 · 0 评论 -
【SSL 1614&洛谷 P1364】医院设置【最短路 Floyed】
Description设有一棵二叉树(如右图)。其中,圈中的数字表示结点中居民的人口。圈边上数字表示结点编号,现在要求在某个结点上建立一个医院,使所有居民所走的路程之和为最小,同时约定,相邻接点之间的距离为1。如 右图中,若医院建在: 1处,则距离和=4+12+220+240=136 3处,则距离和=4*2+13+20+40=81Input第一行一个整数n,表示树的结点数。(n&l...原创 2020-01-16 08:35:48 · 320 阅读 · 0 评论 -
【SSL 1761】城市问题【最短路 Dijkstra】
Description设有n个城市,依次编号为0,1,2,……,n-1(n<=100),另外有一个文件保存n个城市之间的距离(每座城市之间的距离都小于等于1000)。当两城市之间的距离等于-1时,表示这两个城市没有直接连接。求指定城市k到每一个城市i(0<=I,k<=n-1)的最短距离。Input第一行有两个整数n和k,中间用空格隔开;以下是一个NxN的矩阵,表示城市间的距...原创 2020-01-15 19:45:59 · 363 阅读 · 0 评论 -
【SSL 1613】最短路径问题【最短路 spfa算法模板+STL】
Description平面上有n个点(N<=100),每个点的坐标均在-10000~10000之间。其中的一些点之间有连线。若有连线,则表示可从一个点到达另一个点,即两点间有通路,通路的距离为两点直线的距离。现在的任务是找出从一点到另一点之间的最短路径。Input输入文件short.in,共有n+m+3行,其中:第一行为一个整数n。第2行到第n+1行(共n行),每行的两个整数x和y...原创 2019-12-28 16:50:34 · 407 阅读 · 0 评论 -
【SSL 1693&洛谷 P1828】[USACO] 香甜的黄油【最短路 Floyed优化】
Description开幕雷击:此题Floyed可以过!农夫John发现做出全威斯康辛州最甜的黄油的方法:糖。把糖放在一片牧场上,他知道N(1<=N<=500)只奶牛会过来舔它,这样就能做出能卖好价钱的超甜黄油。当然,他将付出额外的费用在奶牛上。 农夫John很狡猾。像以前的Pavlov,他知道他可以训练这些奶牛,让它们在听到铃声时去一个特定的牧场。他打算将糖放在那里然后下午发...原创 2019-12-28 15:49:11 · 213 阅读 · 0 评论 -
【SSL 1119&洛谷 P1522】[USACO]牛的旅行【最短路 FLoyed】
Description农民John的农场里有很多牧区。有的路径连接一些特定的牧区。一片所有连通的牧区称为一个牧场。但是就目前而言,你能看到至少有两个牧区不连通。这样,农民John就有多个牧区了。 John想在农场里添加一条路径(注意,恰好一条)。对这条路径有以下限制: 一个牧场的直径就是牧场中最远的两个牧区的距离(本题中所提到的所有距离指的都是最短的距离)。考虑如下的有5个牧区的牧场,牧...原创 2019-12-28 11:52:17 · 238 阅读 · 0 评论 -
【SSL 2206&洛谷 P1576】最小花费【最短路 Dijkstra】【图论】
Description在n个人中,某些人的银行账号之间可以互相转账。这些人之间转账的手续费各不相同。给定这些人之间转账时需要从转账金额里扣除百分之几的手续费,请问A最少需要多少钱使得转账后B收到100元。Input第一行输入两个用空格隔开的正整数n和m,分别表示总人数和可以互相转账的人的对数。以下m行每行输入三个用空格隔开的正整数x,y,z,表示标号为x的人和标号为y的人之间互相转账需要扣除...原创 2019-12-28 10:44:54 · 219 阅读 · 0 评论 -
【SSL1613】最短路径问题 【最短路】(Dijkstra)
Description平面上有n个点(N<=100),每个点的坐标均在-10000~10000之间。其中的一些点之间有连线。若有连线,则表示可从一个点到达另一个点,即两点间有通路,通路的距离为两点直线的距离。现在的任务是找出从一点到另一点之间的最短路径。Input输入文件short.in,共有n+m+3行,其中:第一行为一个整数n。第2行到第n+1行(共n行),每行的两个整数x和y...原创 2019-12-27 20:41:16 · 453 阅读 · 1 评论 -
【SSL 1613】最短路径问题【模板 最短路 Floyed】
Description平面上有n个点(N<=100),每个点的坐标均在-10000~10000之间。其中的一些点之间有连线。若有连线,则表示可从一个点到达另一个点,即两点间有通路,通路的距离为两点直线的距离。现在的任务是找出从一点到另一点之间的最短路径。Input输入文件short.in,共有n+m+3行,其中:第一行为一个整数n。第2行到第n+1行(共n行),每行的两个整数x和y...原创 2019-12-27 19:35:55 · 304 阅读 · 0 评论