树的重心
参考资料
思想
换根 DP:在 DFS 中计算每个子树的大小,记录「向下」的子树的最大大小,利用总点数 - 当前子树(这里的子树指有根树的子树)的大小得到「向上」的子树的大小,然后就可以依据定义找到重心了。
例题
给定一张无向图,现在要求在某个结点上建立一个医院,使所有居民所走的路程之和为最小。
有一个村庄居住着 个村民,有 条路径使得这 个村民的家连通,每条路径的长度都为 。现在村长希望在某个村民家中召开一场会议,村长希望所有村民到会议地点的距离之和最小,那么村长应该要把会议地点设置在哪个村民的家中,并且这个距离总和最小是多少?若有多个节点都满足条件,则选择节点编号最小的那个点。