`

NIM(1),转载自:雁过无痕

 
阅读更多
只有一堆n个石子,两个人轮流取石子,规定每次至少取1个,最多取m个。最后取光者得胜。
1.n = m+1时,先手显然必败。
2.n = (m+1)x+y时,先手先取y个,若对手取k个则先手再拿走m+1-k个。
3.总能保证n能被(m+1)整除,所以最终先手必胜。当y为0时,后手必胜。
可采用数学归纳法进行形式化证明

NIM游戏的“必胜策略”可以概括为:找出最终获胜局面具有的某种性质,对具有该性质的局面的一次操作得到的新局面必然不具有这种性质,而对不具有该性质的局面,总可以通过一次操作,得到一个具有该性质的新局面。假设游戏双方分别为A、B,只要A方能到达具有该性质的某个局面,则B方一定不能到达具有该性质的任意一个局面,从而不能到达获胜局面,因而B方必败,即A方必胜。这种性质可以是对称性(1.11的策略)、每堆数二进制表示各个位的和的奇偶性(1.12的策略)、属于某个集合(1.13的策略)。

转载地址:http://www.cppblog.com/flyinghearts/archive/2010/08/15/123537.html
分享到:
评论

相关推荐

    nim_webframework:使用Nim创建网站的框架

    Nim Webframework 该库提供了快速的网页设置。 主要目的是提供一个具有用户管理功能的网站框架。 第一次运行 步骤1 将config / config_default.cfg重命名为config / config.cfg并插入您的详细信息并进行编译: ...

    Atom-nim-planet,nim rss feed planet网址:https://planet.nim.zip

    1. **Nim语言**:Nim是一种静态类型的、编译型的、命令式的、系统级编程语言。它设计的目标是高效、优雅和可移植。Nim语法类似Python,但它的性能接近C++,因为它编译成C或C++,然后可以链接到任何库。Nim支持元编程...

    nim-socks5:Nim Socks5库

    nim-socks5:Nim Socks5库

    nim-httpauth:Nim的HTTP身份验证库

    nim-httpauth:Nim的HTTP身份验证库

    nimMapBenchmarks

    nim c -d:release test1.nim nim c -d:release test2.nim nim c -d:release test3.nim nim c -d:release test4.nim nim c -d:release test5.nim nim c -d:release test6.nim nim c -d:release test7.nim nim c -d:...

    nim_sqlbuilder:用于Nim查询SQL构建器

    **nim_sqlbuilder:Nim语言的SQL查询构建器** nim_sqlbuilder是一个专为Nim编程语言设计的库,它的主要功能是帮助开发者构建安全、灵活且易于管理的SQL查询语句。在数据库交互中,使用预编译的SQL语句可以有效防止...

    nim-ci:Nim编译器和存储库的持续集成

    1. **自动编译**:当新的代码提交到仓库时,nim-ci会自动运行Nim编译器对所有源代码进行编译,检查语法错误和类型错误,确保代码的可编译性。 2. **单元测试**:除了编译,nim-ci还能执行项目中的单元测试,确保新...

    nim-duilib 图形页面环境搭建

    **nim_duilib图形页面环境搭建** nim_duilib是一个基于Nim编程语言的库,用于构建图形用户界面(GUI)应用。它借鉴了腾讯的Duilib库,并将其移植到Nim语言中,提供了一套高效、易用的界面开发框架。在本教程中,...

    NIM安装AIX文档

    1. 配置NIM Master:设置NIM Master的网络环境,创建LPP仓库,并导入所需AIX安装映像。 2. 准备NIM Clients:为每个目标系统分配IP地址,设置网络参数,并准备引导媒介(如HMC、USB、CD/DVD等)。 3. 创建NIM Client...

    nim-testrunner:Nim测试运行器

    1. **自动化测试执行**:nim-testrunner 可以自动发现并运行项目中的所有测试模块,无需手动指定每个测试。 2. **多线程执行**:它允许并行运行测试,从而加快整个测试套件的执行速度。 3. **测试分组**:用户可以...

    nim-libu2f:Nim的FIDO U2F服务器端和客户端库

    nim-libu2f:Nim的FIDO U2F服务器端和客户端库

    nim-crc32:Nim的CRC32

    1. **安装**:首先,你需要通过Nim的包管理器`nimble`来安装nim-crc32库。在命令行中输入`nimble install nim-crc32`即可完成安装。 2. **引入库**:在Nim源代码中,通过`import crc32`引入nim-crc32库。 3. **...

    计算机系统1 实验四、五 Nim游戏 汇编源码

    计算机系统1 实验四、五 Nim游戏 汇编源码 计算机系统1 实验四、五 Nim游戏 汇编源码 计算机系统1 实验四、五 Nim游戏 汇编源码 计算机系统1 实验四、五 Nim游戏 汇编源码 计算机系统1 实验四、五 Nim游戏 汇编源码 ...

    nim-i3ipc:Nim的i3 IPC客户端库

    **nim-i3ipc:Nim的i3 IPC客户端库** Nim-i3ipc是一个用Nim编程语言编写的库,专门用于与i3窗口管理器进行进程间通信(IPC,Inter-Process Communication)。i3是一款轻量级、基于Tiling布局的窗口管理器,广泛应用...

    c2nim-esp8266:ESP8266 SDK的自定义c2nim

    1. 源代码:包含c2nim-esp8266项目的源代码,可能有`.nim`和`.c`文件。 2. 示例:可能提供了一些使用转换后的Nim接口的示例代码。 3. 文档:可能有README文件或其他文档,解释如何使用该项目。 4. Makefile或构建...

    AIX NIM跨网段安装aix

    1. **配置NIM环境**:在开始跨网段安装之前,需确保NIM服务器已设置好,包括NIM Master、lpp_source(软件源)、spot(软件包)等。同时,需要定义NIM客户机的属性。 2. **建立NIM客户机网络资源**:使用nim -o ...

    setup-nim-action:设置Nim动作

    actions/checkout@v2 - uses : jiro4989/setup-nim-action@v1 with : nim-version : ' 1.4.0 ' # default is 'stable' - run : nimble build -Y - run : nimble test -Y设置最新的修补程序版本Nim 当nim-version为1....

    nim-ndns:一个纯Nim域名系统(DNS)客户端

    1. **DNS查询**:nim-ndns允许开发人员发起不同类型的DNS查询,如A记录(IPv4地址)、AAAA记录(IPv6地址)、MX记录(邮件服务器)、TXT记录(文本信息)等,以获取与域名相关的数据。 2. **TCP和UDP支持**:DNS协议...

    nim-nim.zip_nim

    【标题】"nim-nim.zip_nim" 指的是一个与 Nim 语言相关的压缩文件,其中包含了名为 "nim" 的文件。Nim 是一种现代、静态类型、编译的系统编程语言,设计目的是高效、灵活且易于学习。它借鉴了多种语言的特点,如 ...

    IBM AIX NIM 安装实例

    本实例中涉及到的主要系统为 AIX 5.2 ML01 版本,包括一台作为 NIM 服务器的机器(test1)和一台作为客户端的机器(test2)。在进行安装前,需要确保服务器端已经安装了以下软件包: - `bos.sysmgt.nim.client` 5.2....

Global site tag (gtag.js) - Google Analytics