最短路
编号21212
SSL是母校,现前往新地图开拓中。
漫游于平行线间的灰鲤,于此处激起黑色孤独的水花。
展开
-
【SPFA】【DG特长生2013】廉价最短路径
图是由一组顶点和一组边组成的。一条边连接两个顶点。例如,图1表示了一个有4个顶点V、5条边的图。图中,每条边e是有方向的,方向从起点到终点,并且每条边都有价值。用整数0,1,…,m-1可以表示一个有m个顶点的图。一条路径连接了一个点Vi和另一个点Vj,其方向与经过的一系列边的方向一致。路径的长度是途经边的条数,路径的费用是边价值的总和。对于一个给定的图,你的任务是在所有最短路径中,找出需要最少费用的连接V0和V1的路径。一个需要最少费用的最短路径称之为廉价最短路径。解spfa多加点一条条件即可。代原创 2021-05-14 09:58:02 · 81 阅读 · 0 评论 -
【SPFA】【二分】通信线路
在郊区有 NNN 座通信基站,PPP 条双向电缆,第 iii 条电缆连接基站 AiA_iAi 和 BiB_iBi。农场主希望对通信线路进行升级,其中升级第 iii 条电缆需要花费 LiL_iLi。电话公司正在举行优惠活动。农场主可以指定一条从 111 号基站到 NNN 号基站的路径,并指定路径上不超过 KKK 条电缆,由电话公司免费提供升级服务。农场主只需要支付在该路径上剩余的电缆中,升级价格最贵的那条电缆的花费即可。求至少用多少钱能完成升级。解二分。二分最贵的电缆,然后比它贵的就需要免费,原创 2021-05-09 15:27:32 · 124 阅读 · 0 评论 -
【最短路】洛谷P1119 灾后重建
Link解细看题目代码#include<cstdio>#include<iostream>#include<cmath>using namespace std;int timee = -1, s[300][300], u, v, ww, n, q, m, t[300], qt, cz = -1;int read(){ int x = 0; char c = getchar(); while(c > '9' || c < '0')原创 2021-03-20 15:05:26 · 87 阅读 · 0 评论 -
【最短路】【枚举】最短路(path)
题目描述给定一个n个点m条边的有向图,有k个标记点,要求从规定的起点按任意顺序经过所有标记点到达规定的终点,问最短的距离是多少。输入第一行5个整数n、m、k、s、t,表示点个数、边条数、标记点个数、起点编号、终点编号。接下来m行每行3个整数x、y、z,表示有一条从x到y的长为z的有向边。接下来k行每行一个整数表示标记点编号。输出输出一个整数,表示最短距离,若没有方案可行输出-1。输入样例3 3 2 1 11 2 12 3 13 1 123输出样例3思路建一个新图,包原创 2020-09-18 20:08:34 · 361 阅读 · 0 评论 -
【二分答案】【SPFA】架设电话线
题目描述Farmer John打算将电话线引到自己的农场,但电信公司并不打算为他提供免费服务。于是,FJ必须为此向电信公司支付一定的费用。FJ的农场周围分布着N(1 <= N <= 1,000)根按1…N顺次编号的废弃的电话线杆,任意两根电话线杆间都没有电话线相连。一共P(1 <= P <= 10,000)对电话线杆间可以拉电话线,其余的那些由于隔得太远而无法被连接。第i对电话线杆的两个端点分别为A_i、B_i,它们间的距离为L_i (1 <= L_i <= 1,00原创 2020-08-12 17:44:23 · 335 阅读 · 0 评论 -
【SPFA】【奇偶性】洛谷P5663 加工零件
Link康康这题。。。题目相当于求从a点走L步是否能到达1点。然后我们可以想到,当走到1点的时候多余的步数可以往旁边走一格,再走回来,相当于当你可以用k步走到1的时候,k+2,k+4,k+6…步都可以走到1。我们要尽可能地使这个k比较小那样就可以把所有的可能性包括过去了。【确定——最短路。】但是——如果这个图是没有环的话,到达1的路径只可能是奇数或偶数其中之一,由于m可能等于n,所以...原创 2019-12-04 17:23:34 · 198 阅读 · 0 评论 -
【单调栈】洛谷P2947_[USACO09MAR]向右看齐Look Up
Link从右往左处理一个递减的单调栈,然后对比当前位置和栈顶,处理,处理后的栈顶即是此位置可以眺望到的第一个cow?#include<cstdio>int n,h[100001],bianhao[100001],st[100001],ans[100001],t;int main(){ scanf("%d",&n); for(int i=1;i<=n;++i)...原创 2019-08-10 22:09:16 · 180 阅读 · 0 评论 -
【最短路】最短路上的统计
Description一个无向图上,没有自环,所有边的权值均为1,对于一个点对(a,b),我们要把所有a与b之间所有最短路上的点的总个数输出。Input第一行n,m,表示n个点,m条边接下来m行,每行两个数a,b,表示a,b之间有条边在下来一个数p,表示问题的个数接下来p行,每行两个数a,b,表示询问a,bOutput对于每个询问,输出一个数c,表示a,b之间最短路上点的总个数S...原创 2019-04-19 20:18:37 · 243 阅读 · 2 评论 -
【最小环】【图论】观光旅游
Description在桑给巴尔岛的Adelton城镇上有一个旅游机构。它们决定在提供许多的其它吸引之外,再向客人们提供旅游本镇的服务。 为了从提供的吸引服务中尽可能地获利,这个旅游机构接收了一个精明决定:在相同的起点与终点之间找出一最短路线。Input你的任务是编写一条程序来找类似的的一条路线。在这个镇上,有N个十字路口(编号1至N),两个十字路口之间可以有多条道路连接,有M条道路(编号为...原创 2019-04-12 21:48:17 · 135 阅读 · 3 评论 -
【SPFA】桐人的约会
这是一个风和日丽的日子,桐人和诗乃在约会。他们所在的城市共有N个街区,和M条道路,每条道路连接两个不同的街区,并且通过一条道路需要花费一些时间。他们现在处于N号街区,正在享受幸福时光的桐人完全忘记了他的手机被亚丝娜安装了监控装置的事情,此时亚丝娜已经得知了桐人的位置以及他正在和一个妹子约会的事实,十分愤怒,于是从她所在的1号街区火速赶往N号街区。现在这个城市中有一条道路正在维修,不能通行,不过不论...原创 2019-04-11 16:52:27 · 87 阅读 · 0 评论 -
【最短路】【图论】CODE[VS]2604舞会邀请
DescriptionSmart是一位颇有成就的艺术家,他因油画作品《我爱北京天安门》闻名于世界。现在,他为了报答帮助他的同行们,准备开一个舞会。Smart准备邀请n个已经确定的人,可是问题来了:这n个人每一个人都有一个小花名册,名册里面写着他能够通知到的人的名字。比如说在A的人名单里写了B,那么表示A能够通知到B;但是B的名单里不见得有A,也就是说B不见得能够通知到A。Smart觉得需要...原创 2019-10-31 15:57:09 · 260 阅读 · 0 评论 -
【DFS】【最短路】产生数
Description给出一个整数 n(n<10^30) 和 k 个变换规则(k<=15)。 规则: 一位数可变换成另一个一位数: 规则的右部不能为零。 例如:n=234。有规则(k=2): 2-> 5 3-> 6 上面的整数 234 经过变换后可能产生出的整数为(包括原数): 234 534 264 564...原创 2019-03-29 20:26:06 · 159 阅读 · 0 评论 -
【SPFA】最优贸易
题目C国有n 个大城市和m条道路,每条道路连接这 n个城市中的某两个城市。任意两个城市之间最多只有一条道路直接相连。这 m 条道路中有一部分为单向通行的道路,一部分为双向通行的道路,双向通行的道路在统计条数时也计为 1条。C国幅员辽阔,各地的资源分布情况各不相同,这就导致了同一种商品在不同城市的价格不一定相同。但是,同一种商品在同一个城市的买入价和卖出价始终是相同的。商人阿龙来到 C 国旅游...原创 2019-03-07 16:03:45 · 118 阅读 · 0 评论 -
【SPFA】电车
简短精炼的一篇博客题目(懒得发了,题目链接走起~)思路这题很容易被开关所迷惑。。。然而把不用动开关的路径权值设为0,其余设为1(如果再经过这个路口不就重复了,不是最优解了么),然后再来个普通SPFA就可以A了。代码#include<cstdio>#include<cstring>#include<queue>using namespace st...原创 2019-02-28 17:07:18 · 178 阅读 · 0 评论 -
最短路(Floyed-Warshall、Dijkstra、Bellman-Ford、SPFA)
文章目录DescriptionInputOutput4种做法勾股定理1.Floyed-Warshall算法O(N^3)Floyed-Warshall代码2.Dijkstra算法O(N^2)Dijkstra代码3.Bellman-Ford算法O(NE)Bellman-Ford代码4.SPFA算法O(kE)Description平面上有n个点(N<=100),每个点的坐标均在-10000~1...原创 2019-01-18 20:14:08 · 412 阅读 · 0 评论 -
【最短路Dijkstra】【图论】最小花费
Description在n个人中,某些人的银行账号之间可以互相转账。这些人之间转账的手续费各不相同。给定这些人之间转账时需要从转账金额里扣除百分之几的手续费,请问A最少需要多少钱使得转账后B收到100元。Input第一行输入两个用空格隔开的正整数n和m,分别表示总人数和可以互相转账的人的对数。以下m行每行输入三个用空格隔开的正整数x,y,z,表示标号为x的人和标号为y的人之间互相转账需要扣除...原创 2019-01-18 15:35:29 · 575 阅读 · 0 评论 -
【图论】【最短路】牛的旅行
题目描述农民 John的农场里有很多牧区。有的路径连接一些特定的牧区。一片所有连通的牧区称为一个牧场。但是就目前而言,你能看到至少有两个牧区通过任何路径都不连通。这样,Farmer John就有多个牧场了。John想在牧场里添加一条路径(注意,恰好一条)。对这条路径有以下限制:一个牧场的直径就是牧场中最远的两个牧区的距离(本题中所提到的所有距离指的都是最短的距离)。考虑如下的有5个牧区的牧场...原创 2019-01-17 11:18:08 · 147 阅读 · 0 评论