题目描述
有n个石子,两个人A,B轮流按4的幂次方捡石子,如1,4,16,64,256,……,最后捡完石子的人获胜,给定n个石子,谁一定获胜?
1.考虑模5余0的情形:
- 当n =5时,A取1,B则取4,A取4,B则取1,B一定赢.
- 同理当n = 10或者n = 15时,B一定赢。
- 当n = 20时 A取1,B则取4,A取4,B则取1,回到了n = 15的情形,A取16,B则取4,所以B一定赢
- 当n以个位为5的情形时: 首先4的幂次方的个位只会出现1,4,6三者之一。A取个位为6时,B则取4,n的个位仍为5,而当A取1时,B则取4,A取个位为4时,B则取1,则变为n以个位为0的情形。
- 当n以个位为0的情形时,A取1,B则取4,A取个位为4,B则取1,n的个位变为5,A取个位为6,B则取4,n的个位变为0
也就是说当n mod 5 = 0 时,无论A怎么取,B都能够再次转化为 n mod 5 = 0的情形,由于n不断的减小,所以最终必然会出现 n = 5 或者n = 10的情形,可知B一定赢
2.考虑模5余1的情形:
显然A只要取1,则转化为模5余0的情形,所以此时A一定赢
3.考虑模5余4的情形:
显然只要A取4,则转化为模5余0的情形,所以此时A一定赢
4.考虑模5余2的情形:
- 当n=2时,A取1,B则取1,B一定赢
- 当n=7时,A取1,B则取4,A取4,B则取1,回到n = 2的情形,B一定赢;
- 当n=12时,A取1,B则取4,A取4,B则取1,回到n = 7的情形;B一定赢;
- 当n=17时,A取1或者4,B则取4或者1,回到n=12的情形,A取16时,B则取1,B一定赢。
- 当n的个位为2时,A取1,则回到模5余1的情形,B赢,当A取个位为6,回到模5余1的情形,B一定赢,当A取个位为4,变成模5余3的情形。