2022 SSSP
SSSP:Solution Set - Shortest Paths,词源 Rainybunny .
SSSP 又同 Single Source Shortest Paths,真是纯正无意义谜语人标题了 .
最短路都不会了,补一份档 .
以下 \(\dist\) 是最短路长度,\(n,m\) 是点数和边数,一般认为同阶 .
最远点对
一棵树,\(q\) 组询问,每次给两个区间 \([a,b],[c,d]\),求 \(\max\{\dist(i,j)\mid a\le i\le b\land c\le j\le d\}\) .
\(1\le n,q\le 10^5\) .
线段树维护,维护子树内最远两点,合并信息时 \(6\) 种情况分类讨论即可 .
查询的时候也考虑用这个维护方式,\(4\) 个点分类讨论即可 .
具体证明就反证法瞎整就证完了 .
时间复杂度 \(\Theta((n+q)\log n)\) .
那一天她离我而去
给一张无向图,求 \(1\) 所在的最小环长度,不能为空 .
\(T\le 10\),\(n\le 10^4\),\(m\le 4\times 10^4\) .
标算:对于每一位只保留与 \(1\) 邻接且当前位为 \(1\) 的边然后跑暴力,就是对每个断了的边 \((1,u)\) 算 \(\dist(u,1)\) 然后更新答案 .
显而易见这个是能枚举到所有的环的,于是就 \(\Theta(m\log^2m)\) 了,可以过了 .
然而这题喜闻乐见地被 joke3579,crs_line 众人爆标了,因为问题是下一题「最小距离」的特例 .
最小距离
给一张无向图,给 \(k\) 个关键点,求每个关键点到最近另一关键点的最短距离 .
\(1\le n,m\le 10^6\) .
开局把所有点全 push 进优先队列然后跑 Dijkstra,就求出来任意一个关键点到某点的最短距离,顺便记一下是哪个关键点的贡献 .
然后枚举一条边,若这条边的两个端点的最短路来自两个不同关键点,更新这两个关键点的答案即可 .
时间复杂度 \(\Theta(m\log m)\) .
重:GXOI/GZOI2019 旅行者
CF1343E:听说很强 .
以下是博客签名,正文无关
本文来自博客园,作者:yspm,转载请注明原文链接:https://www.cnblogs.com/CDOI-24374/p/17149243.html
版权声明:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议(CC BY-NC-SA 4.0)进行许可。看完如果觉得有用请点个赞吧 QwQ