抢“30”游戏的制胜策略
2016-04-20夏鸣
夏鸣
1问题的提出
游戏:甲、乙两人轮流连续报数,甲先报“1”或“1、2”,乙接着连续报数,可以说一个数或两个数,然后又轮到甲,再接着连续报数,同样可以说一个数或两个数,这样两人反复轮流,但不可以不说.谁先抢到30谁就得胜.问:此游戏是否有制胜策略?如果有,制胜策略是什么?
这是一个经典游戏,其中蕴含了丰富的数学知识与思想方法.常见的解题方法是逆推法.具体分析如下:要想抢到30,必先抢到27,要想抢到27,必先抢到24,……,要想抢到6,必先抢到3.因此,这个游戏的制胜策略是抢到3的倍数.
下面对游戏进行推广,将抢“30”改为抢“31”,如果再用逆推法进行分析,那么我们就会发现不容易得出结论.这说明刚才的解法是不全面、不深刻的,并非是解决这类问题的通法.本文将以此问题为例介绍解决这类问题的通法,并给出一个可以推广的制胜策略.
2问题的解决
抢“30”游戏是与自然数有关的问题.解决这类问题时,我们可以先把问题一般化,也就是将抢“30”的问题变成抢“n”(n是自然数)的问题.又因为n是一个自然数,它可以取1、2、3……这些值,所以我们可以用“从一般到特殊再到一般”的方法将问题特殊化,先研究n=1、2、3……时的情况,再通过比较、分析、猜想出其中的规律,最后在对猜想出的规律进行证明或证否.因此,解决与自然数有关问题的一般步骤可归纳为:“问题一般化→问题特殊化→猜想规律→证明规律”[1].下面我们就用这四个步骤解决抢“30”游戏问题.
第1步:问题一般化
将“抢30”问题推广到“抢n”(n是自然数)问题,即甲、乙两人连续报数,甲先报,乙后报,可以说1个数或2个数,谁抢到n谁就得胜.问:此游戏是否有制胜策略?如果有,制胜策略是什么?
第2步:问题特殊化
因为n是自然数,所以我们让n取1、2、3、4……这些特殊的值.
①当n=1时,因为甲先报数,他报1即可获胜.
②当n=2时,甲报1、2即可获胜.
③当n=3时,甲有两种报数方式,一是报1,二是报1、2.当甲报1时,乙报2、3;当甲报1、2时,乙报3.所以乙胜.
④当n=4时,甲只要先报1个数,那么再报剩下的3个数时就是乙先报,甲后报的情况.根据③可知,当报3个数时,后报者胜,所以甲胜.
⑤当n=5时,甲只要先报2个数,那么又剩下的3个数,且甲是后报者,所以甲胜.
⑥当n=6时,因为甲只能报1个数或2个数,所以乙只要在甲报数的基础上报2个数或1个数,就能使剩下的数为3个,并且他是后报者,所以这种情况是乙胜.
⑦当n=7时,甲只要报1,那么再报剩下的6个数时就是乙先报,甲后报的情况.根据⑥可知,当报6个数时,后报者胜,所以甲胜.
⑧当n=8时,甲只要报2,那么又剩下的6个数,且甲是后报者,所以甲胜.
⑨当n=9时,甲报数只能报1或1、2,乙只要报2、3或3就能剩余6个数,再报剩下的6个数时就是乙后报,所以这种情况是乙胜.
⑩当n=10时,甲只要先报1个数,那么再报剩下的9个数时就是乙先报,甲后报的情况.根据⑨可知,当报9个数时,后报者胜,所以甲胜.
……
第3步:猜想规律
通过上述特殊情况,我们不难发现当n=3,n=6,n=9时,乙胜,其余情况都是甲胜.由此,我们猜测“当所报数的个数是3的倍数时,后报者胜”,也可以说成“把3的倍数个数留给对方,我方赢”.
第4步:证明猜想
上述规律是根据许多特殊情况猜测出来的.它不一定是正确的,需要通过证明或证否.下面我们证明上述规律:“把3的倍数个数留给对方,我方赢”.此命题可以改述为“对于所有的自然数k,把3k个数留给对方,我方赢”.下面我们用数学归纳法进行证明.
首先,当k=1时,即把3个数留给对方,根据上述第③情况可以得出命题成立.
其次,假设把3(k-1)个数留给对方,我方能赢,去证明把k个数留给对方,我方赢.
当有k个数留对方后,对方有两种报数方式:
第①种,对方报1个数,则我方报2个数,还剩3k-3个数,就把3(k-1)个数留给了对方,我方赢.
第②种,对方报2个数,则我方报1个数,就又把3(k-1)个数留给了对方,我方赢.
综上所述,命题对于所有的自然数k成立.
通过上述探究,不难发现抢“n”游戏的制胜策略是“把3的倍数个数留给对方,我方赢”.再来看抢“30”游戏,不难分析后报者能胜,因为甲乙需要报数的个数是3的倍数,且甲先报,乙后报,所以乙赢.具体报数的方法是当甲报1个数时,乙接着报2个数;当甲报2个数时,乙接着报1个数.这样乙就能始终把3的倍数个数留给甲,从而乙能赢.
下面将抢“30”改为抢“31”.由于前面的制胜策略是针对抢“n”游戏的,那么对于抢“31”游戏也应该适用.根据制胜策略可知先报者能赢,具体报数的方法是甲先报1个数,留下30(3的倍数)个数给乙,接下去当乙报1个数时,甲报2个数;当乙报2个数时,甲报1个数,这样甲就能赢.
3两点思考
3.1反观原解法的合理性
原来的解法是说想抢到30,必先抢到27、24、…、6、3.表面上看是抢到3的倍数,其实质还是把3的倍数个数留给对方.因为30本身就是3的倍数,那么抢到27、24、…、6、3是就把3个数、6个数,…,24个数、27个数留给了对方.再看抢“31”游戏,我们也可以这样思考,想要赢就必须把30个数、27个数、24个数,…,6个数、3个数留给了对方,那么先报数者只需抢到31-30、31-27、31-24、…、31-6、31-3,即抢到1、4、7、…、25、28这些数就能赢.
3.2把问题再推广
我们将问题推广为:甲、乙两人轮流连续报数,甲先报,乙后报,可以说1个数或2个数或…或m个数(m为自然数),这样两人反复轮流,但不可以不说.谁先抢到n(n为自然数)谁就得胜.根据上面的分析,不难得出以下结论:
参考文献
[1]顾沛.数学文化[M].北京:高等教育出版社,2008:232-234