网上题目:
有两堆石子,数量任意,可以不同。游戏开始由两个人轮流取石子。游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。最后把石子全部取完者为胜者。现在给出初始的两堆石子的数目,假设双方都采取最好的策略,请问有没有必胜的策略。如果没有请说出原因。
我的想法:
如果两堆石子的数量为(0,m)或(m,0),则先取者直接取走m个石子即可取胜。
如果两堆石子的数量为(m,m),则先取者直接取走(m,m)个石子即可取胜。
如果两堆石子的数量为(2,1)或(1,2),那么后取者胜。取法只有(2)-》(1),(1,1)--》(1)两种。先取者不论如何都不能一次取完,后取者胜。
如果两堆石子的数量为(m,1)或(1,m),先取者胜。取法(m-2)后,余(2,1)。
如果为(m,n),有一个取者如果把结果变成(m,1)或(1,m)式,(m>2)则这个取者败。如果取者把先结果变成(2,1)或(1,2)式,则这个取者胜。
因此双方都尽量避免出现取走后出现(0,m),(m,m),(m>2,1)的局势。都尽量拿走后出现(2,1)或(1,2)的局势,即可获胜。
有点像下象棋,要求最后的结果按照某个套路来将对方打败。
分享到:
相关推荐
一、游戏 游戏A: ...两人轮流按下列规则取走一些石子,游戏的规则如下: 2. 每一步应取走至少一枚石子; 3. 每一步只能从某一堆中取走部分或全部石子; � 如果谁无法按规则取子,谁就是输家。 。。。。。。
取石子是经典的算法考试题目,这个PPT是我在百度文库下载的。上传在CSDN是为了备份。下载免任何积分的
博弈论,主要讲述了取石子游戏中所涉及到的三类博弈论问题
组合博弈取石子游戏.pdf
组合博弈 取石子游戏.pdf
c语言之取石子游戏(ACM题目
取石子游戏类分析和分析讨论.ppt
算法-取石子游戏(信息学奥赛一本通-T1218).rar
这是博弈算法-取石子的游戏,这是我自己整理的,自己感觉很有用,希望对大家有好处。
H 取石子游戏.c 简单的博弈题
组合游戏 sg函数 博弈论 acm竞赛 取石子游戏
有N块石头和两个玩家A和B,玩家A先将石头分成若干堆,然后按照BABA……的顺序不断轮流取石头,能将剩下的石头一次取光的玩家获胜。每次取石头时,每个玩家只能从若干堆石头中任选一堆,取这一堆石头中任意数目(大于...
| 取石子游戏 1 27 | 集合划分问题 27 | 大数平方根(字符串数组表示) 28 | 大数取模的二进制方法 28 | 线性方程组 A[][]X[]=B[] 28 | 追赶法解周期性方程 28 | 阶乘最后非零位,复杂度 O(NLOGN) 29 递归方法...
我自已整理的ACM博弈论资料 包括到NIM取石子游戏 还有万能的SG函数 希望对大家有用
内涵经典程序,论文选刊 部分如下:ApSimon 的造币厂问题,华容道游戏的搜索策略,八女王问题,高斯算法,取石子游戏,最大及最小素数问题…… <br>
然后两个玩家轮流来取石子,每次每个玩家可以取走一堆中的所有石子,但有一个限制条件:一个玩家若要取走一堆石子,则与这堆石子相邻的某堆石子已被取走(之前被某个玩家取
Nim取子游戏是由两个人面对若干堆硬币(或石子)进行的游戏。设有k>=1堆硬币,各堆分别含有N1,N2,……NK枚硬币。游戏的目的就是选择最后剩下的硬币。游戏法则如下: 1.两个游戏人交替进行游戏(游戏人I和游戏人...
1、自然数问题(10 分) ...游戏开始由两个人轮流取石子。游戏规定, 每次有两种不同的取法: 一是可以在任意的一堆中取走任意多的石子; 二是可以在两堆中同时取走相同数量的石子。 最后把石子全部取完者为胜者。
在愚蠢模式中,在轮到计算机时,简单地取走随机数目(介于1到n/2之间)的石子 在聪明模式中,计算机每次取走一定数目的石子,使得剩下的石子数目是2的某次幂减1,例如3,7,15,31,63.这总是可行的,除非当前的石子数正好是2的...
在愚蠢模式中,在轮到计算机时,简单地取走随机数目(介于1到n/2之间)的石子 在聪明模式中,计算机每次取走一定数目的石子,使得剩下的石子数目是2的某次幂减1,例如3,7,15,31,63.这总是可行的,除非当前的石子数正好是2的...