CF1881F Minimum Maximum Distance 题解

发布时间 2023-12-22 18:53:20作者: jr_inf

因为白点对 \(f_i\) 没有贡献,所以可以重构出一棵原树的子树,使得所有的叶子都为标记点且标记点数量不变(没有删去标记点)。因为没有标记被删去且结构不变,所以这棵树的答案与原树答案相同。

现在,对于所有节点,到它距离最大的标记点一定在叶子上。那么问题就变为:求出树上任意一点到所有叶子节点的最大距离的最小值。显然,这个点一定在直径上,否则可以通过把点调整到直径上来减小答案。令此时的树的直径为 \(l\),那么答案就是 \(\lceil \frac{l}{2} \rceil\)。时间复杂度 \(O(n)\)