取石头问题-数学

两个人玩游戏,有2009块石头,每一次一个人可以取3,4,或7 块石头。
当剩余石头数少于3块,可以一次取走。问:有何策略可以使先拿的人(或后拿的人)必胜。
呵呵,取到最后一块算赢

谢谢提醒

解:先拿的人有必胜策略。

先简单地算一下数字较小时的情况: (“胜”“负”指先拿的人)
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
负 胜 胜 胜 胜 负 负 胜 胜 胜 胜 负 胜 胜 胜 胜 负 负 胜 胜 胜 胜 负
可以看出 11--21和0--10的情况相同,所以我们猜想并试着证明11为循环。

证:
设An为共有n块石头时先拿者的胜负情况。
(1)当n=0*11时,由上表有A0=A11 , A1=A12 , ... , A10=A21
即,An=负 , An+1=胜 , An+2=胜 , ... , An+10=胜
(2)设当n=(k-1)*11时亦满足上述规律
则当n=k*11时,
A(k-1)*11 A(k-1)*11+1 A(k-1)*11+2 A(k-1)*11+3 A(k-1)*11+4 A(k-1)*11+5
负 胜 胜 胜 胜 负
A(k-1)*11+6 A(k-1)*11+7 A(k-1)*11+8 A(k-1)*11+9 A(k-1)*11+10
负 胜 胜 胜 胜
Ak*11 Ak*11+1 Ak*11+2 Ak*11+3 Ak*11+4 Ak*11+5
负 胜 胜 胜 胜 负
Ak*11+6 Ak*11+7 Ak*11+8 Ak*11+9 Ak*11+10
负 胜 胜 胜 胜
(判定胜负的方法为:若先拿者拿完(3个或4个或7个)后,后拿者对应的状态至少有一个为负,则先拿者胜。即若An-3 , An-4 , An-7中至少有一个值为负,则An值为胜,否则An值为负)
对于Ak*11--Ak*11+10,规律仍然成立。
由(1)(2)可证胜负周期为11。

又因为A0=负,所以A2002=A0=负,即先拿者拿7个即可获胜。

获胜方法:先拿7个;
数先拿者和后拿者每次拿3块的次数,
若为3k次(即0,3,6,9......)则
后拿者 先拿者
3 3
4 7
7 4
若为(3k+2)次(即2,5,8,11......)则
后拿者 先拿者
3 7
4 7
7 3或4
不可能出现(3k+1)次(即1,4,7,10......)如果出现就表示你前
面的过程出了错。
有了前面证明的铺垫,获胜方法的推导并不难,在此不作证明。

解毕
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-01-12
这问题问的。。。一般都得说明是谁拿到最后一块算谁赢还是输。

----------------------------------------
这问题还是有疑问:最后少于3块,也就是只剩下2块的时候才能一次性拿走,对应每次一每个人只能拿3、4、7这三个数,2个人合计一次可以拿走的石头数目就只能是:6、7、8、10、11、14这几个中的一个,无论是哪一个数字,用2007来除都得不到整数,所以没有必胜的答案
第2个回答  2009-01-11
选择后拿,并且跟着先拿的人,他拿多少你拿多少最后终究是你的。
第3个回答  2009-01-14
z1025zzsg的答案很好,我就不说了。类似的数学问题很多,主要是从小数量时找规律。