求数学建模问题 取棋子游戏(编程猜数字游戏1-100)

求数学建模问题 取棋子游戏(编程猜数字游戏1-100)

首页维修大全综合更新时间:2024-04-13 17:47:07

求数学建模问题 取棋子游戏

这是一个必胜策略的游戏。

非常遗憾的是我还没有学到数学建模的时候,就毕业了,而且以后再也没有学过数学。解决问题是不难的,不过我不知道我的思路能不能算是数学建模,希望能给您一点启发。根据楼主的叙述,我们可以看到,如果要求必胜策略,那么必胜的一方就一定要对局面有控制力,保证不管对方如何进行,局面一定在自己的掌控之中。如何控制局面呢,我这么觉得——道理上也应该是这样,就是每次拿得越少,就越能控制局面,比如每次只拿一个,对方只有两种选择,这应该是最容易控制的局面了。因为每轮次只最多消失3个棋子,相当容易控制。我假设,当棋子数量足够多的时候,赢家的策略就是在控制局面的情况下尽量少拿,既保证自己执行控制,也让我们便于分析。现在分析当乙拿完之后的情况,举几种特例,来总结一下。当然,我们假设双方每次都拿很少,为了不让对方一次全部拿走。(一)乙拿完之后剩余4个。这个时候只要甲拿走一个,不管乙怎么拿甲都胜利。(二)乙拿完之后剩余5个。因为甲不能拿走全部,所以不管甲怎么拿,乙都胜利。(三)乙拿完之后剩余6个。甲拿一个。(1)之后如果乙拿一个的话,则剩余四个,情况同前面,甲必胜;(2)如果乙拿两个,甲可以拿剩余的三个,甲胜利。(三)乙拿完之后剩余7个。甲拿两个。(1)如果乙拿一个,则剩余四个,甲胜;(2)如果乙拿两个或大于两个,甲可以拿走剩余全部,甲胜。(四)乙拿完之后剩余8个。甲不能全部拿走,(1)甲拿一个,乙拿两个,乙胜(2)甲拿两个乙拿1个,乙胜(3)甲拿3个以上,乙就全拿走,乙胜。剩余8个,乙必胜。(五)乙拿完之后剩余9个。甲拿1个,剩余8个,前面分析了,剩余8个的时候如果不能全部拿走,那么轮到谁拿谁就输。所以甲胜。(六)乙拿完之后剩余10个。甲拿两个,还是给乙留8个,还是甲胜。(七)乙拿完之后剩余11个。甲拿三个,还是给乙留8个,还是甲胜。(八)乙拿完之后剩余12个。甲拿一个,(1)乙拿一个,胜10个,如前所述,甲胜;(2)乙拿两个,剩余9个,还是甲胜。(九)乙拿完之后剩余13个,还是甲胜,还用多说么。必胜策略已经出炉了。当棋子足够多的时候,只要甲每次只拿一个,控制乙,乙只能拿一个或者两个。那么慢慢拿下去,因为每个轮次最多只拿走三枚棋子,到最后就一定会出现乙拿完之后剩余11,10,9这三种情况之一,就是甲必胜。总结一下,当棋子数量大于8个的时候,甲必胜;当棋子数量为8或者5的时候乙必胜;当棋子数量为4、6、7甲必胜;棋子数量小于4就没有讨论的价值了。所以,排除特例,当棋子数量大于8的时候,先拿必胜。策略就是先拿的一方每次只拿一个,一直到出现剩余棋子数量为9或10或11这三种情况之一为止;出现这三种情况之后,甲拿掉棋子,使得剩余棋子数量为8,不管乙怎么拿,都是甲胜利。

大家还看了
也许喜欢
更多栏目

© 2021 3dmxku.com,All Rights Reserved.