一、定义

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. Linux列举所有隐藏文件

    ll 命令是 ls -l的缩写 ls -a是列举所有(all)文件,包含隐藏文件,以.开头的文件. ls -l是以列表(list)方式列举文件. http://bbs.chinaunix.net/th ...

  2. XMLHttpRequest.withCredentials

    https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/withCredentials var xhr = new XMLHtt ...

  3. Linux Network Commands

    https://www.tecmint.com/linux-network-configuration-and-troubleshooting-commands/ http://www.tldp.or ...

  4. [转]curl的详细使用

    转自:http://www.cnblogs.com/gbyukg/p/3326825.html 下载单个文件,默认将输出打印到标准输出中(STDOUT)中 curl http://www.centos ...

  5. 下载系统已经安装的rpm包

    下载系统已经安装的rpm包 yum -y install yum-utils 安装yum下载工具 yumdownloader mysql 用yum下载到当前目录 实例:查询mysql安装包[root@ ...

  6. linux 十个命令

    http://www.roncoo.com/article/detail/124514

  7. sql server2005查询分析器显示行号方法

    工具栏:工具--选项--文本编辑器---所有语言--右边复选框 行号 打上勾就ok了

  8. Lodop多分出空白页的可能(情况1)

    在用Lodop进行打印超文本的时候,本身内容看上去只有一页,却分页分出空白的一页,很有可能有不可见内容的存在,下面是测试的一种情况,如html内部有内容占着空间,却是不可见的,如一些对象,或者如测试内 ...

  9. Java 的类加载机制

    Java 的类加载机制 来源 https://www.cnblogs.com/xiaoxi/p/6959615.html 一.什么是类的加载 类的加载指的是将类的.class文件中的二进制数据读入到内 ...

  10. CISCN2018-WP

    MISC: 验证码: 用token登录 输入好验证码就可以得到flag Picture: 图片隐写,一下就想到binwalk或者winhex打开试试 binwalk打开无果 将这段数据ctrl+shi ...