发现一次操作相当于交换 A 和 BC,那么一个 A 可以与它后面所有与它相连的 BC 组成 ABC。扫一遍统计一下即可。
A
BC
ABC
一个错误的贪心:求出最大生成森林,然后连一条最大的边。
错误的点在于,如果一条边加上后刚好形成一个环,那么这条边是可行的,并且更优。
那么这样贪就好了。
考虑一个点作为 \(\text{lca}\) 时的贡献,统计子树大小计算即可。非常简单。