RT 思路是先找出来一个重心做根,因为这样向下遍历的时候就可以保证 size>N/2size>N/2size>N/2 的那个子树是自己的父亲,然后对每个点记录一个除了这个点的子树之外的部分 sizesizesize 最大但是不超过 N/2N/2N/2 的子树大小,记为 cut[u]cut[u]cut[u] ,如果点 uuu 满足 N−sz[u]−cut[u]≤N/2N-sz[u]-cut[u]\le N/2N−sz[u]−cut[u]≤N/2 那么这个点就是可以经过改造成为重心的。 思路或者代码有没有问题嘛 这里是代码,有啥没写清楚的就问我QAQ 谢谢各位/dk