删边最短路笔记
TernaryTree · · 算法·理论
板子题 CF1163F
删边最短路顾名思义就是对每条边算出删掉这条边之后这张图的最短路
首先如果这条边不在原图最短路上那么这条边的答案显然就是原图最短路
不然的话 我们有一条最短路上的边删掉之后的最短路 不可能去拐两个并联那样的东西 所以我们去枚举每条非最短路边
经过这条边的最短路一定经过了某个原图最短路的前缀和后缀
这个前后缀实际上就是在 1 为根的最短路树和 n 为根的最短路树和 n/1 的 lca,这东西能树上递推求的
然后就相当于对中间这段没经过的最短路 和经过这条边的最短路的区间取个 min
吉老师线段树。。额
根本不用阿 反正只有最后查询一次 直接标记永久化扔结点上最后 dfs 一次就行了
复杂度线对哦哦哦哦哦
写了近 4k 一遍过了 十分的爽爽爽爽爽爽