您的位置:首页 > 其它

关于取火柴棒问题取胜方法的一些思考(简述)

2015-05-29 14:52 351 查看
取火柴棒游戏的问题叙述:

桌上有n根火柴棒,甲乙两人按照如下规则轮流取走这些火柴棒:

1.每次只允许取走1~2根火柴棒;

2.最后一次取走火柴棒的人获胜;

取胜方法:

若甲先取,且甲想要取胜,那么可以考虑如下一种策略(我们姑且就称之为策略A吧):

甲先取,之后乙取,若乙取1个火柴棒,那么之后甲就取2个火柴棒;若乙取2个火柴棒,则甲取1个火柴棒,总之就是保证甲+乙=3,那么,就产生了如下3种情况:

1)n=3k+1,k是整数:

这种情况下,甲要取胜,方法为:先取1个火柴棒,那么还剩下3k个火柴棒,之后采取策略A.这样,就能保证每回合都取走3个,且甲取后一次.以此类推,甲就一定能取胜.

2)n=3k+2,k是整数:

这种情况下,甲要取胜,方法为:先取2个火柴棒,那么还剩下3k个火柴棒,之后采取策略A.这样,就能保证每回合都取走3个,且甲取后一次.以此类推,甲就一定能取胜.

3)n=3k,k是整数;

这种情况下,甲要么先取1个,要么先取2个.剩下的就是:3k-1或者3k-2;而3k-1=(3k+2)-3;
3k-2=(3k+1)-3 在这种情况下,甲是必输的.因为这个问题可以等价于乙先取3k-1或3k-2个火柴棒,也就是3k+2或3k+1个火柴棒,这与上述1),2)的情况是一样的.所以,这种情况下,甲必输

总结:

在甲先取的情况下,胜负如下

1)若n=3k+1或者n=3k+2

甲采取策略A必胜

2)若n=3k

乙一定能用策略A取得胜利,亦即乙必胜.

进一步推广取火柴棒问题,描述如下:

桌上有n个火柴棒,甲乙两人按照如下规则轮流取走这些火柴棒:

1)每次只允许取走1~m个火柴棒;

2)最后一次取走火柴棒的人获胜;

我们可以从上面的推理中类推出此问题的解,取胜方法策略为(我们姑且称之为策略B):

若甲先取,且甲想取胜

甲先取若干个火柴棒,之后乙取,若乙取1个火柴棒,那么之后甲就取m个火柴棒;若乙取2个火柴棒,则甲取m-1个火柴棒......总之就是保证甲+乙=m+1,那么,就产生了如下m+1种情况:

1)n=(m+1)*k+1,k是整数;

甲先取1个火柴棒,那么还剩下(m+1)*k个火柴棒,之后采取策略B,这样,就能保证每回合都取走m+1个,且甲取后一次.以此类推,甲就一定能取胜.

2)n=(m+1)*k+2,k是整数:

甲先取2个火柴棒,那么还剩下(m+1)*k个火柴棒,之后采取策略B,这样,就能保证每回合都取走m+1个,且甲取后一次.以此类推,甲就一定能取胜.

......

......

m)n=(m+1)*k+m,k是整数:

甲先取m个火柴棒,那么还剩下(m+1)*k个火柴棒,之后采取策略B,这样,就能保证每回合都取走m+1个,且甲取后一次.以此类推,甲就一定能取胜.

m+1)n=(m+1)*k,k是整数:

这种情况下,甲要么先取1个,要么先取2个,要么先取3个,......要么先取m个,那么分别还剩下:(m+1)*k-1,(m+1)*k-2,(m+1)*k-3,......,(m+1)*k-m个火柴棒,亦即[(m+1)*k+m]-(m+1),......,[(m+1)*k+1]-(m+1)个火柴棒.这相当于上面的1)~m)这m种情况,只不过先取的是乙,这种情况下,乙必胜.

总结:

甲先取,且甲想取胜

1)若n=(m+1)*k+1,(m+1)*k+2,......,(m+1)*k+m

采取上述策略,甲一定能取得胜利

2)若n=(m+1)*k

乙采取上述策略,乙一定能取得胜利.

从上面的结论,我们可以看到,只有一种情况下,乙是必胜的,那就是n=(m+1)*k,其余都是甲必胜,可见,甲必胜的概率随着m的增加而不断变大,同时,我们也可以看出,先手者胜率高.

最后,希望有兴趣的童鞋能够通过本文有所启发,那就再好不过了.如果还有童鞋有什么疑问或者不同的看法,欢饮关注微信公众号Yongf与我进行交流

或者扫描下面的二维码关注下,在上面留下您的看法,我都会一一回复.愿与您共进步

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: