随笔分类 - 图论—最短路径—Dijkstra---迪杰斯特拉算法
摘要:题意 "题目链接" Sol 做的时候忘记写题解了 可以参考 "这位大爷" cpp include define Pair pair define MP make_pair define fi first define se second using namespace std; const int
阅读全文
摘要:题意 "题目链接" Sol 分层图+最短路 建$k+1$层图,对于边$(u, v, w)$,首先在本层内连边权为$w$的无向边,再各向下一层对应的节点连边权为$0$的有向边 如果是取最大最小值的话可以考虑二分答案+最短路 cpp // luogu judger enable o2 // luogu
阅读全文
摘要:题意 "题目链接" 给出一张有向图,以及起点终点,判断每条边的状态: 1. 是否一定在最短路上,是的话输出'YES' 2. 如果不在最短路上,最少减去多少权值会使其在最短路上,如果减去后的权值$ define Pair pair define MP make_pair define fi first
阅读全文
摘要:题意 题目链接 题意:给出一张无向图,每次询问两点之间的最短路,满足$m - n <= 20$ $n, m, q \leqslant 10^5$ Sol 非常好的一道题。 首先建出一个dfs树。 因为边数-点数非常少,所以我们可以对于某些非树边特殊考虑。 具体做法是:对于非树边连接的两个点,暴力求出
阅读全文
摘要:题意 给你一张无向图,保证从1号点到每个点的最短路唯一。对于每个点求出删掉号点到它的最短路上的最后一条边(就是这条路径上与他自己相连的那条边)后1号点到它的最短路的长度 Sol emmm,考场上想了个贪心开心的飞起然而只多得了10分qwq 正解比较神仙。 首先把最短路树建出来,考虑一条非树边$(u,
阅读全文
摘要:题意 。。。求最短路 Sol 前几天写dijkstra的时候没打vis标记居然A了,然后天真的我就以为Dijkstra不用打标记。 事实上dijkstra真的不用打标记,只不过会被卡成SPFA的复杂度
阅读全文
摘要:Description 给出一个N个点M条边的无向图,经过一个点的代价是进入和离开这个点的两条边的边权的较大值,求从起点1到点N的最小代价。起点的代价是离开起点的边的边权,终点的代价是进入终点的边的边权 N<=100000 M<=200000 给出一个N个点M条边的无向图,经过一个点的代价是进入和离
阅读全文
摘要:Description 给定平面上的n个点,定义(x1,y1)到(x2,y2)的费用为min(|x1-x2|,|y1-y2|),求从1号点走到n号点的最小费用。 给定平面上的n个点,定义(x1,y1)到(x2,y2)的费用为min(|x1-x2|,|y1-y2|),求从1号点走到n号点的最小费用。
阅读全文
摘要:题目描述 Farmer John dutifully checks on the cows every day. He traverses some of the M (1 <= M <= 50,000) trails conveniently numbered 1..M from pasture
阅读全文
摘要:题目描述 The good folks in Texas are having a heatwave this summer. Their Texas Longhorn cows make for good eating but are not so adept at creating creamy
阅读全文
摘要:题目描述 有一个邮递员要送东西,邮局在节点1.他总共要送N-1样东西,其目的地分别是2~N。由于这个城市的交通比较繁忙,因此所有的道路都是单行的,共有M条道路,通过每条道路需要一定的时间。这个邮递员每次只能带一样东西。求送完这N-1样东西并且最终回到邮局最少需要多少时间。 输入输出格式 输入格式:
阅读全文
摘要:题目描述 给出一个N个顶点M条边的无向无权图,顶点编号为1~N。问从顶点1开始,到其他每个点的最短路有几条。 输入输出格式 输入格式: 输入第一行包含2个正整数N,M,为图的顶点数与边数。 接下来M行,每行两个正整数x, y,表示有一条顶点x连向顶点y的边,请注意可能有自环与重边。 输出格式: 输出
阅读全文
摘要:题目背景 题目描述 在n个人中,某些人的银行账号之间可以互相转账。这些人之间转账的手续费各不相同。给定这些人之间转账时需要从转账金额里扣除百分之几的手续费,请问A最少需要多少钱使得转账后B收到100元。 输入输出格式 输入格式: 第一行输入两个正整数n,m,分别表示总人数和可以互相转账的人的对数。
阅读全文
摘要:题目描述 Description 平面上有n个点(n<=100),每个点的坐标均在-10000~10000之间。其中的一些点之间有连线。若有连线,则表示可从一个点到达另一个点,即两点间有通路,通路的距离为两点间的直线距离。现在的任务是找出从一点到另一点之间的最短路径。 题目描述 Descriptio
阅读全文