bzoj2282 [SDOI2011]消防

题目

  bzoj2282

题解

  首先吐槽一发题意

  选择的路径可以不包含边???

  只包含一个节点也算路径???

  惹不起 惹不起

  然后我们就可以发现,离任意一点最远的点必然是直径的端点,所以所选路径至少有一点在树的直径上

  此时答案即为较远端点到当前点的距离

  剩下的点若不在直径上,无法更新直径端点到所选路径的距离,答案不变

  所以整条路径都在直径上答案是最优的

  于是二分

  (树的直径两遍bfs求得)

代码

猜你喜欢

转载自www.cnblogs.com/XYZinc/p/9168998.html