取子问题,取数问题等等(总共n个棋子),每次轮流取1~m个,问谁能取到最后一枚
这个问题主要看n%(m+1)的结果
如果n%(m+1)为0,那么后手赢,如果n%(m+1)!=0,那么先手赢。
考虑到只剩m+1个棋子的时候,这个时候谁取谁输。
所以
如果n%(m+1)为0,那么先手至少取了1个,后手可以对应的取,使得剩下棋子数保持n%(m+1)=0,这样下去,先手一定会面临在m+1个棋子中取子的问题,先手必输。
如果n%(m+1)!=0,那么先手可以先行取子,使得剩余的棋子保持n%(m+1)=0,这样后手无论怎么取,先手都可以调整取子,使得n%(m+1)=0,这样就可以保证先手必赢。

浙公网安备 33010602011771号