当前位置:网站首页>蓝桥杯历届试题-高僧斗法(博弈论)
蓝桥杯历届试题-高僧斗法(博弈论)
2022-08-09 00:00:00 【Kobe_G】
蓝桥杯历届试题-高僧斗法是一道尼姆堆博弈论(Nim游戏),本文只对尼姆堆问题进行粗略的解释,不对题目进行讲解,我相信只要搞清楚了尼姆堆这种博弈论问题之后,这道题将会迎刃而解。
一般的Nim游戏是这样的:有n个石堆,每堆里有数量一定的石子,两人从其中任意一堆中取任意数量的石子(不能超过这堆石子数的最大值),不能不取,最后某个人取完,所有石堆中的石子数量都为0时,另一个人就为输。
这里要先介绍一些概念:定义两个状态,分别为N和P,N代表Next-position,可以理解为先手必胜状态,P代表Previous-position,可以理解为后手必胜状态。(如果实在搞不清楚这个也没关系,直接看结论)
结论:当游戏开始时,各个石堆(a1,a2,a3…an),当且仅当a1 ^ a2 ^ a3 ^ … ^an=0时它为P。即先手必败。(至于这个结论是如何得出的,可以百度深入了解一下)
所以我们以后遇到这种博弈论问题时,直接把这些石头的数量相互异或,如果结果为0,则先手必败;否则先手必胜。
边栏推荐
猜你喜欢
JS基础知识
穿越派(v3.14)版本可以试用啦!
一 C#中通过USB操作手机文件
第三章 数据库设计
Anaconda 使用 Navigator 安装 Tensorflow(包括 Anaconda 安装)
穿越派套餐说明
并发编程第11篇,线程池的一些常用用法和使用
win10电脑:电脑触摸板控制
[Deep Learning] TensorFlow Learning Road One: Introduction to TensorFlow and Implementation of Linear Regression and Logistic Regression
记一次“粗暴”的Flash模拟EEPROM法(用的STM32F030C6芯片,没找到模拟EEPROM库函数)
随机推荐
C——《C和指针》第六章读书笔记
gptp协议
C#编写飞行棋游戏
HCIP2--HCIA复习
BGP实验
office:如何查看并下载office账户的订阅软件
pycharm的远程运行环境设置
轮流取石头游戏
穿越派·派盘 + OmniFocus = 私人项目管理库
MySQL预处理及过程与对象创建数据库
第四章 SQL与关系数据库基本操作(上)
遇到一个STM32中断的坑,记录一下(和NVIC的抢占位设置有关)
OSPF实验
C#数据流
穿越派·派盘+KeePass = 最安全的私人密码管理方案
snmp获取agent OID,及MibBrowser使用
并发编程第六篇,lock锁接口和其实现
穿越派·派盘V3.14发版啦!
C--《C和指针》第8章读书笔记之多维数组
Anaconda 使用 Navigator 安装 Tensorflow(包括 Anaconda 安装)