定义状态
\(\text{P}\):表示当前局面下先手必败。
\(\text{N}\):表示当前局面下先手必胜。
\(\text{N,P}\) 状态的转移满足如下性质:
合法操作集合为空的局面为 \(\text{P}\)。
可以移动到 \(\text{P}\) 的局面为 \(\text{N}\)。
所有移动只能到达 \(\text{N}\) 的局面为 \(\text{P}\)。
一共有 \(n\) 堆石子,第 \(i\) 堆中有 \(a_i\) 个石子。
每一次操作小 \(\mathtt{G}\) 和小 \(\mathtt{D}\) 可以从任意一堆石子中取出任意数量的石子,至少取一颗,至多取出这一堆剩下的所有石子。
两个人轮流行动,取走最后一个的人胜利。小 \(\mathtt{G}\) 为先手。
对于局面 \((a_1,a_2,...,a_n)\),它是 \(\text{P}\) 局面当且仅当 \(a_1\ \text{xor}\ a_2\ \text{xor}...\text{xor}\ a_n=0\)。
容易发现只要满足以下三个条件即可:
原文:https://www.cnblogs.com/AWhiteWall/p/14403827.html