首页 微武游戏指南 正文

Nim游戏有必胜方法吗?高手教你几招轻松获胜!

今天心血来潮,想搞搞小时候玩的Nim游戏,就是那种几堆石子,两人轮流拿,每次可以从任意一堆里拿走至少一个,谁拿到一颗石子谁就赢的游戏。

小时候跟小伙伴们玩,总是输多赢少,感觉里面有点门道,但又说不清。这回我打算彻底弄明白,看看这游戏背后到底藏着什么玄机。

第一步,先回忆一下游戏规则,找找感觉。

我找来几堆硬币,模拟几局。发现有时候先拿的人能赢,有时候后拿的人能赢,感觉跟石子的数量和堆数都有关系,有点乱。

第二步,上网查资料,看看有没有什么必胜策略。

不查不知道,一查吓一跳,原来这游戏还真有门道!网上说,这游戏的关键在于“异或”运算。我一个文科生,看到“异或”两个字就头大,不过为搞明白,还是硬着头皮看下去。

小编温馨提醒:本站只提供游戏介绍,下载游戏推荐89游戏,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区

资料上说,把每一堆石子的数量都用二进制表示,然后把这些二进制数做异或运算,如果结果是0,那么先手必败,否则先手必胜。

  • 啥是异或?简单来说,就是两个二进制数,对应位置相同就得0,不同就得1。
  • 比如:5的二进制是101,3的二进制是011,异或结果就是110,也就是6。

第三步,实践出真知,验证一下这个策略。

我找几组数据测试一下:

  • 第一组:3,4,5。

3的二进制是011,4的二进制是100,5的二进制是101,异或结果是010,也就是2。结果不是0,所以先手必胜。我试着玩几局,果然先手总能赢。

  • 第一组:1,4,5。

1的二进制是001,4的二进制是100,5的二进制是101,异或结果是000,也就是0。结果是0,所以先手必败。我又试着玩几局,发现先手怎么拿都赢不。

第四步,更深入地思考,找到获胜的具体方法。

光知道先手能不能赢还不够,还得知道具体怎么拿才能赢。网上资料说,如果异或结果不是0,先手的人要做的就是从某一堆里拿走若干石子,使得剩下的石子数异或结果变成0。

比如说,3,4,5这组数据,异或结果是2。我要做的就是从某一堆里拿走一些,使得剩下的异或结果变成0。我试一下,发现从第一堆里拿走2个,剩下1,4,5,异或结果正好是0,这样我就把必败状态留给对手。

第五步,

玩这么久的Nim游戏,今天总算搞明白。原来这游戏背后还藏着这么多数学知识。以后再跟别人玩,我就可以用这个策略,保证自己立于不败之地!

不过这游戏虽然有必胜策略,但我觉得跟朋友玩,最重要的还是开心,输赢不重要,享受过程才是最重要的,哈哈!

本文转载自互联网,如有侵权,联系删除