1.要从必胜或必败的局面反推
2.SG函数
只要当前状态可以转移到的状态中有一个是败态,那么当前状态就是胜态。胜态为N。
如果当前状态可以转移到的所有状态都是胜态,那么当前状态就是败态。败态为P。
sg函数为每个状态赋一个自然数的值,这个值为除这个状态的后继外的最小自然数。首先定义mex(minimal excludant)运算,这是施加于一个集合的运算,表示最小的不属于这个集合的非负整数。例如mex{0,1,2,4}=3、mex{2,3,5}=0、mex{}=0。
从图的汇点开始反推,可知汇点(第一个败态)的sg值为0。
性质:
败态等价于sg值为0。
游戏和的SG函数等于各个游戏SG函数的Nim和。这样就可以将每一个子游戏分而治之,从而简化了问题。