趣味棋子游戏中的数学

别妄想泡我
750次浏览
2021年01月15日 02:15
最佳经验
本文由作者推荐

万事功到自然成的上一句-换房子

2021年1月15日发(作者:郎霁岚)


趣味棋子游戏中的数学

朋友,你可玩过游戏么?你可知道身边熟悉的游戏也 许都蕴涵着数学知识?今天让我们
来领略一下两个有趣棋子游戏中的数学.
一.取棋子游戏
游戏规则:
(1)取一堆棋子,一共13枚;
(2)每次游戏双方轮流从中取走1至5枚棋子;
(3)谁取最后1枚棋子谁输。
如果有人 邀请你做这个游戏可要留心了,因为这个看似简单的游戏其实暗藏玄机,不
了解的人必输无疑。
那么让我们来分析一下这个游戏
首先采取逆推法,观察当剩下一定数量的棋子,对于取者是有利还是不利。由游戏规则
可得
(1)当只有1枚棋子的时候,显然取者必输;
(2)当有2至6枚棋子时,取者可以对应取走1至5枚棋子从而只剩下1枚给对手,获
得胜利
(3)当有7枚棋子的时候,取者无论取走1至5枚中的任何一个数都会使棋子堆中剩下
2至6 枚棋子,从而对手就可以根据(2)获胜,取者失败
(4)当有8至12枚棋子的时候取者只要对应取 走1至5枚棋子即可使棋子堆中剩下7
枚棋子由对手来取,从而根据(3)对手必败,取者获胜
(5)当有13枚棋子的时候,无论取者取多少都将进入剩下8至12枚棋子的情况,从而
对手将根据 (4)获胜,取者失败。
也就是说,这个游戏中后取者一方得胜的几率是100%。假如你不幸先取,那就没有任
何可能胜利。
同时研究以上(1)至(5)的情况,我们会发现,只有当棋子堆中剩下1枚,7枚,13枚时,先取者是会失败的。这有什么规律呢?经过观察可以发现
1=1+0*6 7=1+1*6 13=1+2*6


由此我们可以将这个游戏中的 总棋子数推广到M,设有M个硬币每次游戏双方轮流从
中取走1至5枚硬币;谁取最后1枚硬币谁输。
则当M=1+6n 即 6除M的余数为1时,后取者必定胜利。
那么为什么是6这个数呢,经过观察,我们可以发现因为6=1+5
是“一个玩家每次可以取的最大枚数”+1
于是这个游戏中的数据可以继续推广,设有M个硬 币,每次游戏双方轮流从中取走1
至a枚硬币;谁取最后1枚硬币谁输。
当M=1+(1+a)n时后取者必胜
我们可以对该公式进行验证
假设该游戏进行了n个回合后结束
先取者每轮从硬币堆中取走x个硬币(1≤x≤a)
则后取者可以选择取走(1+a-x)个硬币
那么硬币堆每回合都会减少1 +a个硬币,第n回合结束后,将只剩下1枚硬币,因为
此时由先取者取硬币,先取者就输了。
利用这条公式我们可以构造出许多类似的数据进行游戏如
当有65枚硬币,每次游戏双方轮流从中取走1至7枚硬币则先取者必输
当有82枚硬币,每次游戏双方轮流从中取走1至8枚硬币则先取者必输
当有101枚硬币 ,每次游戏双方轮流从中取走1至9枚硬币则先取者必输
诸如此类„„„„

二.翻棋子游戏
游戏规则:
(1)有一个2*2棋盘,棋盘上每个格子上都有一枚棋子
(2)两个人进行该游戏,每回合 里轮回行动,其中一人可以决定选择翻转某两枚或者一
枚棋子,接着另一人可以选择将棋盘旋转90,1 80或者270度,或什么都不做。
(3)游戏轮流进行到所有棋子同面向上翻棋者胜
(4)选择翻棋子的人在游戏过程中无法看到棋盘上的棋子
这个游戏看似复杂,让人望而生畏 ,其实是有迹可寻的,首先我们采取穷举法列出所有
初始情况如下(H代表正面,T代表反面)




1和4上下对称,实际属于一种状态。这样就只有1、2、3三种初始状态了。
目标是,经过数次翻转棋子,使得所有的状态都能达到全上或者全下的情形。
1. 任一对角线翻转(这里的翻转指的是上面的每个棋子都翻个个,下同)这一步做完
后,便出现如下情形:
状态(1)不变,因为它要么变成对称,要么旋转角度。
状态(2)也不变,只是旋转了一下角度而已。
状态(3)直接变成全上或全下了,OK,属于提前完成任务,丢弃。
2. 任一条边翻转
长话短说,状态(1)依然不变,因为除了变角度就是变成对称。
状态(2)分两种情况。一种是直接胜利,丢弃。另一种是变成状态(3)。
3. 任一对角线翻转
状态(1)仍然不变,状态(3)直接走向胜利。
4. 任一个硬币翻转
这一步的目的是让状态(1)变成状态(2)或者状态(3)。这样,后续的步骤就和前
面一样 了。
5. 任一对角线翻转
6. 任一条边翻转
7. 任一对角线翻转 < br>这个方法分成两部分,前三步和后三步。前三步处理棋盘上有偶数颗正面朝上的棋子的
情况。第四 步把奇数颗正面朝上的情况转化成偶数颗正面朝上的棋子,然后重复使用前三步
的策略即可。
这个方法可以直接推广到的情况:


在给出方法前,先定义棋子状态为0如果正 面朝上,为1若正面朝下。若干个状态的
XOR和指状态的和除以2的余数。两个棋子对称是指两个棋子 处于正多边形棋盘的直径上(此
时为偶数)。
假设
S(k)

n 2k
时的策略。我们来递归构造策略
S(k)

1、如果棋盘上任何对称的 棋子方向都相同,则将对角的棋子一个整体(同时操作)之
后,

2、如果棋盘上任 何对称的棋子方向都相同或者同时都相反,类似1先调用
方向都相同,则已经解决了问题。若否,注意到 调用
C
1
棋子的朝向,这样调用
,若棋子
枚棋子转化成的情形,调用 即可让所有棋子方向相同。此策略记为
的过程只会同时改变对称的两个
之后还是满足任何对称的 棋子方向都相反,这时候,翻转连续的
可以解决任
个棋子。
枚棋子调用
的每
个棋子,从而可以转化成1情况。所以,策略
何对称的棋子相同或者相反的情况。其中表示翻转 连续的
3、接下来主要是把问题转化为2中的情况。这时候只需要对某连续
即可。这是因为如果 我们把对称的棋子看成一个整体的话,则这次
次操作都只作用于任何对称的棋子的其中一枚上。这样,如 果我们考虑对称棋子的XOR和的
话,的过程中会出现所有对称的棋子方向都相同或者都相反的情形,也 就是2中
的每一步后,都的情况。由于我们不知道这个状态在什么时候出现,所以在这个
需要执 行一次操作。最后将情况还原到全部棋子朝向统一.
其实还有许多我们熟悉的游戏都蕴涵着数学知识, 只要我们善于发现和思考,就可以在
游戏中兼获乐趣和知识



党建带团建工作总结-夏日


danmei-广州别称


勇敢一点-企业合理化建议


节假日放假-汽车驾驶员年终总结


中秋名句-植物妈妈有办法ppt


纷-形容中秋节的诗句


3个火枪手-面试英文自我介绍


360防火墙怎么关-法律手抄报