题解:P9923 [POI 2023/2024 R1] Przyciski
这个题涉及到网格图图论建模的一个 trick:开一个二分图,对于网格图上的一个结点集合中的每个结点,设为
现在的问题变成:选择若干条边,使得这个二分图所有点周围选中的边数(下称度数)奇偶性相同。
我们发现,如果选一个环,那么就是一个所有点度数为偶数的解。所以有环的话直接选就可以了。
没有环怎么办呢?显然偶数解都是一堆环拼起来,所以就没有偶数解了。容易发现这时候,这个图会退化成一个森林。
对于每棵树,如果它有奇数个初始度数(不计是否选择)是偶数的结点(下称偶点),那么显然无解,因为每次选边会改变两个结点的度数,这样的奇偶性不同。
如果满足每棵树中,偶点都有偶数个,那么一定有解。
具体地,对于每棵树,任选一个根,对于每个结点,如果其子树中偶点的个数为偶数,则选择它与它父亲之间的边,否则不选即可。
代码懒得放了。