巴什博弈

废话少说

巴什博弈:给出一堆n个物体,双方每次可以从中拿出至少一个,最多m个。给出n,m的数值
问:先手方是否会赢

分析:
对于博弈问题通常有这样的必败点和必胜点分析方法又成P/N分析法

此法有如下定理:
0.终点是必败点(这也是下两条的前提)
1.只用一步就到必胜点的必为必败点
2.只用一步就能走到必败点的就是必胜点

上一道题来理解
杭电:http://acm.hdu.edu.cn/showproblem.php?pid=2147
题意:
给出一个m*n的矩阵,要求从右上通过每次向,左,下,左下(三选一)的方式来移动,最终走到左下点。
kiki先移动,然后zz进行移动,二者每次均会选优的策略
问:kiki是否会赢
是否会赢从一开始已经决定好了

0代表必败点,1代表必胜点

0 1 0
1 1 1
0 1 0
以此类推

可以找到其中的数学规律
那么就是如果(m&1)&&(n&1)那么就会输掉比赛
否则就赢
怎么样简单吧

再来看看正经的巴什博弈
以牛客网上图灵杯的一个seek joker 为例
建立一个数轴

   0 1    1     0      1       1      0
   1 m m+1 2m 2m+2 3m 3m+3
看懂了吗?解释一下
     下面那行mmm的行是代表n的值

     0为必败点,上一个杭电的题每次走的距离就只有1,所以就只能移动“1”的距离

     而巴什博弈每次可以移动m的距离,把m看成“单位1”如何?如果我现在在m的位置上,我走m-1的距离,下一家走的时候他至少要走1,那么他就输了,我就赢了,所以m为必胜点

所以把这个距离放到x倍如何

得出n%(m+1)!=1那么先手胜出

PS :那么根据之前的P/N分析法就可以轻松得出我给出的“n”值和输赢的关系

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值