思路: 首先是要建最大生成树,不难发现,对于两点$u,v$,如果$u v$中最小的边的权值最大,那么这条路径$u v$一定在最大生成树上。 考虑用$Kruskal$建最大生成树,那么首先对边按照从大到小进行排序。 然后用并查集维护两个点的联通性,如果$u$与$v$不在同一个并查集中就合并,注意到合并 ...
分类:
其他好文 时间:
2019-01-28 23:09:27
阅读次数:
217
一看到这道题,就想到了某次小生成树 一般对于无向图且不是树的情况,求路径经过边的最小(最大)值且不考虑路径总长,通常考虑最小(最大)生成树 由于求尽量通过边,最大生成树即可 很愉快的,问题转换成了如何求树上两点间的边权最小值。 对于树上路径问题,我们通常考虑倍增或树剖 ~~(但我太菜了,不会树剖)所 ...
分类:
其他好文 时间:
2018-11-15 21:13:40
阅读次数:
143
题目描述 AA国有nn座城市,编号从 11到nn,城市之间有 mm 条双向道路。每一条道路对车辆都有重量限制,简称限重。现在有 qq 辆货车在运输货物, 司机们想知道每辆车在不超过车辆限重的情况下,最多能运多重的货物。 输入输出格式 输入格式: 第一行有两个用一个空格隔开的整数n,mn,m,表示 A ...
分类:
其他好文 时间:
2018-11-08 20:44:43
阅读次数:
192
题目链接:https://www.luogu.org/problemnew/show/P2245 = 货车运输 被逼着写过mst+lca 后来成了mst+树剖 include include include include using namespace std; const int maxn = ...
分类:
其他好文 时间:
2018-10-17 11:04:24
阅读次数:
188
P1967 货车运输 唔快下课啦我先写写思路吧qwq ...
分类:
其他好文 时间:
2018-10-10 14:17:08
阅读次数:
148
传送门 解题思路 货车所走的路径一定是最大生成树上的路径,所以先跑一个最大生成树,之后就是求一条路径上的最小值,用树剖+线段树,注意图可能不连通。将边权下放到点权上,但x,y路径上的lca的答案不能算,因为他的点权来自上面的路径。 #include<iostream> #include<cstdio ...
分类:
其他好文 时间:
2018-09-27 22:01:30
阅读次数:
188
https://www.zybuluo.com/ysner/note/1294390 题面 给出一个$n×m$的网格图,相邻点距离为$1$。图上有$p$个建筑。每次在从一个建筑到另一个建筑的所有路径中,找出使经过的相邻建筑物间最大距离最小的路径,只用输出这个最大距离。 $n,m\leq2000,p\ ...
分类:
其他好文 时间:
2018-09-26 23:59:05
阅读次数:
445
倍增新高度——树上倍增(其实差不多啦) 首先倍增就不说了 那么树上倍增和倍增有什么区别呢? 其实没什么区别,对于树上的结点u, 我们同样用st[u][l]数组记录其结点u向上2^l步数中权值最小(最大)的值 但是树上的边不是连续的啊,这我们怎么去维护呢? 这时,我们需要引入一个辅助数组f数组, 对于 ...
分类:
其他好文 时间:
2018-09-19 17:14:56
阅读次数:
156
题目描述 AA国有nn座城市,编号从 11到nn,城市之间有 mm 条双向道路。每一条道路对车辆都有重量限制,简称限重。现在有 qq 辆货车在运输货物, 司机们想知道每辆车在不超过车辆限重的情况下,最多能运多重的货物。 输入输出格式 输入格式: 第一行有两个用一个空格隔开的整数n,mn,m,表示 A ...
分类:
其他好文 时间:
2018-09-10 22:25:37
阅读次数:
337
题目描述 AAA国有nn n座城市,编号从 11 1到n nn,城市之间有 mmm 条双向道路。每一条道路对车辆都有重量限制,简称限重。现在有 qqq 辆货车在运输货物, 司机们想知道每辆车在不超过车辆限重的情况下,最多能运多重的货物。 输入输出格式 输入格式: 第一行有两个用一个空格隔开的整数n, ...
分类:
其他好文 时间:
2018-08-30 22:15:01
阅读次数:
222