QOJ.ac

QOJ

Type: Editorial

Status: Open

Posted by: Milmon

Posted at: 2026-03-29 19:49:15

Last updated: 2026-03-29 19:49:20

Back to Problem

题解

设 $A$ 的二维前缀和数组为 $S$,那么每个限制 $(x, y)$ 均可以写成:

  • $S_{x, y} = 1$;
  • $S_{N, M} \oplus S_{x, M} \oplus S_{N, y} = 0$。

所有第一条限制都是独立的,这使得总方案数除以了 $2^K$。对于第二条限制,不妨认为 $S_{N, M}$ 是一个常数,此时相当于 $S_{x, M}$ 和 $S_{N, y}$ 之间有限制。建出一张图,给这两个结点之间连边,那么每个连通块就有 $2$ 种方案。

由于 $N, M$ 非常大,所以需要对操作的行列编号离散化后计算。

时间复杂度为 $\mathcal{O}(K \log K)$。

Comments

No comments yet.