[ABC301Ex] Difference of Distance 题解

建立原图的最小生成树,那么两点路径最大值的最小值即为 MST 上两点路径最大边权。

设修改边 (x,y)(x,y),原权值为 ww。

首先查询 ss 到 tt 的最小瓶颈是否是 ww,如果不是,显然没有影响。

否则问题转化为:仅考虑边权 ≤w\leq w 的边,(x,y)(x,y) 是否为 s,ts,t 之间的割边。

将询问离线下来,扫描线按边权排序,将边权 ≤w\leq w 的非树边 (u,v)(u,v) 加入,将 uu 到 vv 的点合并,并查集维护。

最后查询 s,ts,t 点是否在同一个并查集且 (x,y)(x,y) 是否在 s,ts,t 在 MST 的路径上即可,因为加的是非树边,所以若 s,ts,t 不连通则无法从 ss 通过非树边到达 tt,故此时 (x,y)(x,y) 为割边。

时间复杂度 O(nlog⁡n)\mathcal O(n \log n)。

posted @ 2023-05-16 12:54  蒟蒻orz  阅读(37)  评论(0)    收藏  举报  来源