QOJ.ac

QOJ

Type: Editorial

Status: Open

Posted by: jiangly

Posted at: 2025-12-13 00:21:11

Last updated: 2025-12-13 00:21:15

Back to Problem

题解

白色石子堆的 SG 函数就是它们的异或。

要计算黑色石子堆的 SG 函数,设其中最小的一堆为 $x$;有 $c$ 堆等于 $x$;$y$ 是 $1$ 当所有的黑色石子堆都相等,否则是 $0$。则 SG 函数为 $x-(c\bmod 2)\operatorname{xor}y$。

从大到小枚举选择的最小的黑色石子堆以及奇偶性,用线性基计算比它大的数的方案数。再考虑所有石子堆都相等的情况。最后加上全部白色的方案。

时间复杂度 $O(n\log\max\{a_i\})$。

Comments

No comments yet.