其他分享
首页 > 其他分享> > CF1667D Edge Elimination 题解

CF1667D Edge Elimination 题解

作者:互联网

题面

这种树上删边类型的问题可以把每个点单独拿出来,将与它相连的边看成一个菊花图,在菊花图上面钦定顺序,然后用拓扑排序确定相对顺序。

我们对每个点连边的删边确定顺序,偶数标成 0,奇数标成 1(即被删的相对顺序的奇偶性)。那么肯定 1 的个数为 \(\lfloor\frac{du_i}{2}\rfloor\)。这样就可以判定合不合法。

不难发现肯定是 0101... 这样的形式,我们就钦定一个顺序。这个可以从叶子往上确定。

碰到度数为偶数的情况,我们应该排成 1010...,因为 1 的另一端点有奇数条边,这边也应该有奇数条。

将边看成点,对于钦定的顺序,我们将前一条边对应的点向后一条边对应的点连一条边。

不难发现肯定不会有环,拓扑排序即可。

Code:https://pastebin.ubuntu.com/p/zfcG2FJpyn/

标签:...,顺序,奇数,题解,钦定,标成,Edge,Elimination,删边
来源: https://www.cnblogs.com/xsl19/p/cf1667d_sol.html