原问题:也就是说,有N块石头和两个玩家A和B,玩家A先将石头随机分成若干堆,然后按照BABA...的顺序不断轮流取石头,能将剩下的石头一次取光的玩家赢,每次取石头时,每个玩家只能从若干堆石头中任选一堆,取这一堆石头中任意数目(大于0)个石头。
扩展问题: 如果规定相反,取光所有石头的人输,又该如何控制局面?
解答:
1、如果石头的个数N为奇数,则只需将石头分为N堆,每堆的个数为1个,则按照BABA的顺序取石头,显然B必然是最后一个取石头,所以B必输。
2、如果石头的个数N为偶数,
i) 假设N=2,则不管A如何初始化石头(1,1)(2)则B只需取走一个石头,A必输。
ii) 假设N=4,若
(1) A初始化石头为(2,2),假若B取走其中一堆的一块石头变为(1,2),则玩家A只需把个数为2的那堆石头取走,则B就输了;
(2) A初始化石头为(2,2),假若B取走一堆石头的2块石头变为(0,2),则玩家A只需再取走一块石头,则B就输了。
所以当N=4时只需将石头初始化(2,2)则A必有办法取胜。
iii) 假设N为>=6的偶数,则只需要将其分为相等的两块(N/2,N/2),按照BABA的顺序取石头,
(1)则若B从一堆中取出石头使石头变为(M,N/2),若M>=2,则A立即从另一堆石头取相等的石头使剩余的石头变为(M,M),这样BABA的取石头会在某次A取石头之后使石头变为(2,2)的局面,则A赢B输。
(2)若B从一堆中取出石头使石头变为(M,N/2)若M=1,则A只需取完另一堆的N/2块石头即可,这时B输A赢,
(3)若B从一堆中取出石头后石头变为(M,N/2)若M=0,则A只需要从另一堆中取出N/2-1块石头即可,这时B输A赢。
以上(1)中若B第一次取使石头的个数变为(M,2/N)其中M>=2,则A取后变成(M,M),则B再取变为(M',M),若M'<2,则处理方式与以上的(2)和(3)类似。
总之,若规定最后取完石头的人输,石头的个数为N,若N不等于2,则A总有办法可以获胜。