一、定义

Anti-Nim 游戏:

取走最后一个石子的玩家输

Multi-Nim游戏:

每次取完后可以将一堆石子分为多堆,不能存在空堆

Multi-Anti-Nim游戏:

每次取完后可以将一堆石子分为多堆,不能存在空堆,取走最后一个石子的玩家输

二、Anti-Nim游戏结论及其证明

若局面满足以下两个条件中的1个,则先手必胜;否则,先手必败

1、局面的SG不为0,且至少存在一个子局面的SG>1

2、局面的SG为0,不存在子局面的SG>1

情况1:局面的SG!=0,至少存在一个子局面的SG>1

根据Nim取石子游戏的证明可知

一定存在一种方案,使后手面临局面SG=0

(将SG最大的子局面的SG变成局面SG^自己的SG即可)

先手选择让后手面临SG=0

(1)只有一个子局面的SG>1,那么先手可以选择将这一个子局面的SG变成0或者1,

后手面临局面有偶数个SG=1的子局面

局面SG=0,不存在一个子局面的SG>1,这是一个必败局面

所以先手必胜

(2)有两个或以上的子局面的SG>1,先手至多可以使一个子局面的SG<=1,

后手面临局面SG=0,存在子局面的SG>1,这是必败局面

所以先手必胜

情况2:局面的SG!=0,不存在子局面的SG>1

这种情况是奇数个SG=1的局面

那么只能转移到偶数个SG=1的局面

后手面临局面的SG为0,不存在子局面的SG>1,这是一个必胜局面

所以先手必败

情况3:局面的SG=0,不存在子局面的SG>1

这种情况是偶数个SG=1的局面

只能转移到奇数个SG=1的局面

后手面临局面的SG不为0,不存在子局面的SG>1,这是一个必败局面

所以先手必胜

情况4:局面的SG=0,存在子局面的SG>1

这种情况下,至少有两个子局面的SG>1

只能转移到局面的SG!=0,存在子局面的SG>1

后手面临必胜局面

所以先手必败

三、Multi-Anti-Nim游戏结论不变证明

结论:

同Anti-Nim游戏

证明:

只考虑先手必败局面

情况2:

因为不能分出SG=0的子局面,所以这种情况下无法局面无法再分

情况4:

即证明 子局面分裂之后的异或和 仍然不为0

同Anti-Nim游戏证明,详请参见http://www.cnblogs.com/TheRoadToTheGold/p/8618228.html

Multi-Anti-Nim游戏结论及证明的更多相关文章

  1. 关于NIM博弈结论的证明

    关于NIM博弈结论的证明 NIM博弈:有k(k>=1)堆数量不一定的物品(石子或豆粒…)两人轮流取,每次只能从一堆中取若干数量(小于等于这堆物品的数量)的物品,判定胜负的条件就是,最后一次取得人 ...

  2. Multi-Nim游戏结论不变证明

    Nim取石子游戏结论: 若n堆石子的异或和为0,则先手必胜:否则,先手必败 加入新规则: 每次取完石子后,可以将取的那一堆的石子 分为多堆,也可以不分 结论: 同Nim取石子游戏结论 证明: 如果异或 ...

  3. $NIM$游戏小总结

    $umm$可能之后会写个博弈论总结然后就直接把这个复制粘贴上去就把这个删了 但因为还没学完所以先随便写个$NIM$游戏总结趴$QAQ$ 首先最基础的$NIM$游戏:有$n$堆石子,每次可以从一堆中取若 ...

  4. 编程之美----NIM游戏

    : 博弈游戏·Nim游戏 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 今天我们要认识一对新朋友,Alice与Bob.Alice与Bob总是在进行各种各样的比试,今天他 ...

  5. [hihoCoder] 博弈游戏·Nim游戏

    时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 今天我们要认识一对新朋友,Alice与Bob.Alice与Bob总是在进行各种各样的比试,今天他们在玩一个取石子的游戏.在 ...

  6. (转载)Nim游戏博弈(收集完全版)

    Nim游戏的概述: 还记得这个游戏吗?给出n列珍珠,两人轮流取珍珠,每次在某一列中取至少1颗珍珠,但不能在两列中取.最后拿光珍珠的人输.后来,在一份资料上看到,这种游戏称为“拈(Nim)”.据说,它源 ...

  7. Nim游戏(组合游戏Combinatorial Games)

    http://baike.baidu.com/view/1101962.htm?fr=aladdin Nim游戏是博弈论中最经典的模型(之一),它又有着十分简单的规则和无比优美的结论 Nim游戏是组合 ...

  8. hihocoder 1163 博弈游戏·Nim游戏

    1163 : 博弈游戏·Nim游戏 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 今天我们要认识一对新朋友,Alice与Bob. Alice与Bob总是在进行各种各样的 ...

  9. Nim游戏博弈

    Nim游戏的概述: 还记得这个游戏吗? 给出n列珍珠,两人轮流取珍珠,每次在某一列中取至少1颗珍珠,但不能在两列中取.最后拿光珍珠的人输. 后来,在一份资料上看到,这种游戏称为"拈(Nim) ...

随机推荐

  1. /langversion 的选项“4”无效;必须是 ISO-1、ISO-2、3 或 Default SystemFrameWorkV3

    https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/configure-language-version Edit th ...

  2. 彻底弄懂jsonp原理及实现方法

    一. 同源策略 所有支持Javascript的浏览器都会使用同源策略这个安全策略.看看百度的解释: 同源策略,它是由Netscape提出的一个著名的安全策略. 现在所有支持JavaScript 的浏览 ...

  3. Docker 网络部分的简单学习以及转帖别人的blog

    1. 感谢一下 大神: http://www.cnblogs.com/sparkdev/ 最近有时间的话 就会读一下他的博客.学习了解docker相关的知识 今天简单做了下 测试 在这里面记录一下. ...

  4. React onWheel

    <!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8" ...

  5. loadrunner基础学习笔记七-面向目标场景

    部署应用程序之前,要执行验收测试以确保系统能够承担预期的实际工作量. 可以为想要生成的每秒点击次数,每秒事务数或事务响应时间设置目标 loadrunner将使用面向目标的场景自动生成所需的目标,当应用 ...

  6. Linux、Debian、Jenkins、GIT、Nginx、码云安装,自动化部署前后端分离项目

    1.安装Jenkins i:下载Jenkins安装包(war文件):https://jenkins.io/download/ ii:这里采用Tomcat的war包方式安装,讲下载好的安装包放到Tomc ...

  7. JS中Number(),parseInt(),parseFloat()和自动类型转换

    [参考来源] https://www.cnblogs.com/yi0921/p/6196841.html https://blog.csdn.net/u010200222/article/detail ...

  8. LightOJ - 1356 Prime Independence (二分图 最大独立集 素数打表)

    题意: 给你一个集合,让你从这个集合中挑选出几个数,使得这几个数中任意两个数相除后的值不能为素数 即挑选出来的这几个数不能互相冲突 最大独立集 = 所有点数 - 最大匹配数 呵..呵...原先用的二维 ...

  9. python3网络爬虫(2.1):爬取堆糖美女

    额,明明记得昨晚存了草稿箱,一觉醒来没了,那就简写点(其实是具体怎么解释我也不太懂/xk,纯属个人理解,有错误还望指正) 环境: 版本:python3 IDE:pycharm2017.3.3 浏览器: ...

  10. 【BZOJ1876】[SDOI2009]SuperGCD(数论,高精度)

    [BZOJ1876][SDOI2009]SuperGCD(数论,高精度) 题面 BZOJ 洛谷 题解 那些说数论只会\(gcd\)的人呢?我现在连\(gcd\)都不会,谁来教教我啊? 显然\(gcd\ ...