D - Tree and Hamilton Path

题意

给一棵树,问一个排列,使得按顺序走过这些点的路径最长。

N<=100000

解法

为了能让每条边被通过的次数达到上界, 咱们首先找出重心, 而后容易得出一种排列方案,使得答案为以重心为根的深度和*2。 但因为这不是一条回路,还要减去与重心相连的一条边。 若是重心存在一个儿子的size是点数的一半,那么就减去这条儿子的边权。 不然就挑一个最短的边权删掉便可。

相关文章
相关标签/搜索