题解:CF2042E Vertex Pairs
钦定根妙完了。
因为原题给出了一个无根树,如果我们在此基础上考虑不选择一个点,则需要对其的所有子树进行递归,这个做起来是十分复杂的。所以我们考虑钦定一个点为根,表示根这个点一定在我所选的集合内。因为同一种颜色的两个点至少选择一个,所以将两个点分别钦定为根跑一遍即可。
因为删除第
那么对于一个节点,如果删除了它相当于删除了它的所有子树,那么我们考虑如何判断那些点不能被删除。
-
任意一对同色点的
\text{lca} 到根路径上的所有点是不能被删除的。 -
当一个点被删除,则另一个同色点到根路径上的所有点是不能被删除的。
第一种情况可以提前找到所有同色点
因为每个点只会被删除一次,所以复杂度是正确的。
复杂度