分为 \(x \ne rt\) 和 \(x = rt\) 两种情况计算.
对于第一种情况,不难发现我们合法的裁减下来的连通块大小是在一个区间范围之内的,于是 DFS 时用一棵树状数组修改即可(因为这个大小可能是子树大小可能是子树外大小,这取决于你一条祖先链有哪些点),但子树内的 siz 可能会被记入,所以我们再记录一棵线段树用于消除其贡献.
对于第二种情况,直接枚举删哪条边,看是否可行即可.
分为 \(x \ne rt\) 和 \(x = rt\) 两种情况计算.
对于第一种情况,不难发现我们合法的裁减下来的连通块大小是在一个区间范围之内的,于是 DFS 时用一棵树状数组修改即可(因为这个大小可能是子树大小可能是子树外大小,这取决于你一条祖先链有哪些点),但子树内的 siz 可能会被记入,所以我们再记录一棵线段树用于消除其贡献.
对于第二种情况,直接枚举删哪条边,看是否可行即可.