P9879 题解

· · 题解

update 2024/6/17:修改了一处笔误。

blog。找网络流水题写题解 /hsh。

间隔染色(i+j 分奇偶染不同色)后,所有 i+j 为奇数的格子反色,题目的 Pattern 等价于是 2\times2 的全黑或全白格子。

然后很自然地想 Flow 了。每个点分黑白两种状态。

这个本质是二者选一式问题,所以答案是总数减去最小割。

求方案的话,先 DFS 求出那些边是没有被割掉的,然后直接覆盖上全黑 / 全白即可。输出记得把格子重新反色回去。

code,时间复杂度 O(\text{能过}),反正 10.00s 随便冲。