巴什博弈必胜解法

巴什博弈必胜解法

 

今天手机时刷到某节目,两嘉宾做如下博弈(巴什博弈),规则如下:

  • 棋盘一共 100 个棋子
  • 两个人轮流抓取
  • 每人每次只能抓取 1 ~ 7枚
  • 抓到 100 (即最后一个棋子)的人失败

 

原理推理:

1、拿到 99 的人必胜(拿到 99 立即停下不拿,另一个人只能拿第 100 个)

2、从 99 推,想要拿到 99 则对方的取值范围只能在 [92, 98],即拿到 91 的人必胜(拿到 91 立马停下,对方无论拿到 [92, 98] 中任何一个值停下,都能保证己方 100% 拿到 99)

3、由此不断前推,得到答案 —— 拿到 3 的人必胜

 

具体中间值计算如下:
在这里插入图片描述

 

实际玩的时候拿到3,之后所有的值均拿 3 + n * 8 即可保证必胜

你可能感兴趣的:(python,蓝桥杯,算法,职场和发展)