专栏文章
UVA1464 Traffic Real Time Query System 题解
UVA1464题解参与者 2已保存评论 2
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @mipnkc3u
- 此快照首次捕获于
- 2025/12/03 14:55 3 个月前
- 此快照最后确认于
- 2025/12/03 14:55 3 个月前
UVA1464 Traffic Real Time Query System 题解
题目大意
给出一张 个点, 条边的无向连通图,问从第 条边到第 号边必须经过多少点。题目有多组数据。
思路
转换问题
这道题类似于 P4320,不过那一题求的是点之间的必经点数,这一题求的是边之间的必经点数。
先建出圆方树,再想如何把边转换成点来做。
根据点双联通分量(下面简称点双)的性质,每条边在且仅在唯一一个点双之中。
所以可以把这条边转换成这条边所在的点双在圆方树中的点,接下来这再求两条边转换成的点之间必须要经过的点。
求边属于的点双
这时候就有一个问题,如何求出一条边所在的点双,先设连接这条边的两个节点编号为 。
根据圆方树的性质, 和 在圆方树上的距离一定为 2,且 和 路径中间的点一定为这条边所在的点双。
由于距离只有 2,所以 和 在树上的位置关系只有三种。
下面每种情况都用一张图片举例,为了方便表示,设 为 的在树上的父亲,最后要求的点双为 。
第一种情况: 是 父亲的父亲

这种情况需要判断 ,最后要求的点双 为 。
第二种情况: 是 父亲的父亲

这种情况需要判断 ,最后要求的点双 为 。
第三种情况: 是 和 共同的父亲。

这种情况需要判断 ,最后要求的点双 即 。
求最终的答案
通过上面的三种情况,能求的 到 这条边的点双 ,设另一条边的点双为 ,最终的答案为 到 的必经点的个数。
根据 P4320 的结论, 到 的必经点的个数即为 到 路径上割点的个数。
由于 和 都是点双,手摸几组情况可知 到 路径上割点的个数为 ,其中 表示 到 路径的长度。
可以通过倍增 LCA 在 的时间复杂度求出。
最终总时间复杂度为 。
相关推荐
评论
共 2 条评论,欢迎与作者交流。
正在加载评论...