博弈1

news/2025/10/24 13:38:08/文章来源:https://www.cnblogs.com/xihegudi/p/19163053

巴什博奕

\(N\) 个石子,两名玩家轮流行动,按以下规则取石子:

规定:每人每次可以取走 \(X(1 \le X \le M)\) 个石子,拿到最后一颗石子的一方获胜。

双方均采用最优策略,询问谁会获胜。

两名玩家轮流报数。

规定:第一个报数的人可以报 \(X(1 \le X \le M)\) ,后报数的人需要比前者所报数大 \(Y(1 \le Y \le M)\) ,率先报到 \(N\) 的人获胜。

双方均采用最优策略,询问谁会获胜。

  • \(N=K\cdot(M+1)\) (其中 \(K \in \mathbb{N}^+\) ),后手必胜(后手可以控制每一回合结束时双方恰好取走 \(M+1\) 个,重复 \(K\) 轮后即胜利);
  • \(N=K\cdot(M+1)+R\) (其中 \(K \in \mathbb{N}^+,0 < R < M + 1\) ),先手必胜(先手先取走 \(R\) 个,之后控制每一回合结束时双方恰好取走 \(M+1\) 个,重复 \(K\) 轮后即胜利)。

扩展巴什博弈

\(N\) 颗石子,两名玩家轮流行动,按以下规则取石子:。

规定:每人每次可以取走 \(X(a \le X \le b)\) 个石子,如果最后剩余物品的数量小于 \(a\) 个,则不能再取,拿到最后一颗石子的一方获胜。

双方均采用最优策略,询问谁会获胜。

  • \(N = K\cdot(a+b)\) 时,后手必胜;
  • \(N = K\cdot(a+b)+R_1\) (其中 \(K \in \mathbb{N}^+,0 < R_1 < a\) ) 时,后手必胜(这些数量不够再取一次,先手无法逆转局面);
  • \(N = K\cdot(a+b)+R_2\) (其中 \(K \in \mathbb{N}^+,a \le R_2 \le b\) ) 时,先手必胜;
  • \(N = K\cdot(a+b)+R_3\) (其中 \(K \in \mathbb{N}^+,b < R_3 < a + b\) ) 时,先手必胜(这些数量不够再取一次,后手无法逆转局面);

Nim 博弈

\(N\) 堆石子,给出每一堆的石子数量,两名玩家轮流行动,按以下规则取石子:

规定:每人每次任选一堆,取走正整数颗石子,拿到最后一颗石子的一方获胜(注:几个特点是不能跨堆不能不拿)。

双方均采用最优策略,询问谁会获胜。

记初始时各堆石子的数量 \((A_1,A_2,\dots,A_n)\) ,定义尼姆和 \(Sum_N = A_1 \oplus A_2 \oplus \dots \oplus A_n\)

\(\pmb{ Sum_N = 0 }\) 时先手必败,反之先手必胜。

Nim 游戏具体取法

先计算出尼姆和,再对每一堆石子计算 \(A_i \oplus Sum_N\) ,记为 \(X_i\)

若得到的值 \(X_i<A_i\)\(X_i\) 即为一个可行解,即剩下 \(\pmb X_i\) 颗石头,取走 \(\pmb {A_i - X_i}\) 颗石头(这里取小于号是因为至少要取走 \(1\) 颗石子)。

Moore’s Nim 游戏(Nim-K 游戏)

\(N\) 堆石子,给出每一堆的石子数量,两名玩家轮流行动,按以下规则取石子:

规定:每人每次任选不超过 \(K\) 堆,对每堆都取走不同的正整数颗石子,拿到最后一颗石子的一方获胜。

双方均采用最优策略,询问谁会获胜。

把每一堆石子的石子数用二进制表示,定义 \(One_i\) 为二进制第 \(i\) 位上 \(1\) 的个数。

以下局面先手必胜:

对于每一位, \(\pmb{One_1,One_2,\dots ,One_N}\) 均不为 \(\pmb{K+1}\) 的倍数。

Anti-Nim 游戏(反 Nim 游戏)

\(N\) 堆石子,给出每一堆的石子数量,两名玩家轮流行动,按以下规则取石子:

规定:每人每次任选一堆,取走正整数颗石子,拿到最后一颗石子的一方出局

双方均采用最优策略,询问谁会获胜。

  • 所有堆的石头数量均不超过 \(1\) ,且 \(\pmb {Sum_N=0}\) (也可看作“且有偶数堆”);
  • 至少有一堆的石头数量大于 \(1\) ,且 \(\pmb{Sum_N \neq 0}\)

阶梯 - Nim 博弈

\(N\) 级台阶,每一级台阶上均有一定数量的石子,给出每一级石子的数量,两名玩家轮流行动,按以下规则操作石子:

规定:每人每次任选一级台阶,拿走正整数颗石子放到下一级台阶中,已经拿到地面上的石子不能再拿,拿到最后一颗石子的一方获胜。

双方均采用最优策略,询问谁会获胜。

对奇数台阶做传统 \(\pmb{\tt{}Nim}\) 博弈,当 \(\pmb{Sum_N=0}\)** 时先手必败,反之先手必胜。**

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/945223.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Day3综合案例一:个人简介

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0">…

自动机

AC 自动机 定义 \(|s_i|\) 是模板串的长度,\(|S|\) 是文本串的长度,\(|\Sigma|\) 是字符集的大小(常数,一般为 \(26\)),时间复杂度为 \(\mathcal O(\sum|s_i|+|S|)\) 。 // Trie+Kmp,多模式串匹配 struct ACAut…

边缘计算与AI:移动端设计软件的实时性能突破 - 教程

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

标注工具--抹除目标

恩,chatgpt帮我写的标注抹除的工具 import cv2 import numpy as np import argparse import os """ 左键拖动 框选区域 左键单击 粘贴选区 z 撤销上一次操作 c 取消当前选区 s 手动保存 n 自动保存当前…

1024程序员节福利!参与互动,5分钟赢好礼!

Hi 程序员朋友们! 敲得了代码,扛得住需求,也该在 1024 这个专属节日里,给自己拆份“技术人专属福利”啦~ 作为深耕开源数据库的 IvorySQL,今年 1024 不想搞复杂玩法——2 种方式,轻松参与,即可获得 IvorySQL 周…

具身智能/智能体 定义

1. 具身智能智能并非一个孤立于身体的大脑计算过程,而是源于身体与环境的实时交互。智能、知觉和行动是一个不可分割的整体。 一个系统必须拥有“身体”(可以是实体机器人,也可以是虚拟环境中的化身),并通过这个身…

【数据挖掘】基于随机森林回归模型的二手车价格预测分析(信息集+源码)

【数据挖掘】基于随机森林回归模型的二手车价格预测分析(信息集+源码)pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: …

实用指南:flink批处理-水位线

实用指南:flink批处理-水位线2025-10-24 13:24 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !importan…

字符串模式匹配算法 KMP

子串与子序列中文名称 常见英文名称 解释子串 \(\tt substring\) 连续的选择一段字符(可以全选、可以不选)组成的新字符串子序列 \(\tt subsequence\) 从左到右取出若干个字符(可以不取、可以全取、可以不连续)组成…

Z函数(扩展 KMP)

Z函数(扩展 KMP) 获取字符串 \(s\) 和 \(s[i,n-1]\) (即以 \(s[i]\) 开头的后缀)的最长公共前缀(LCP)的长度,总复杂度 \(\mathcal O(N)\)。 vector<int> zFunction(string s) {int n = s.size();vector&l…

常用例题

常用例题 题意:在一篇文章(包含大小写英文字母、数字、和空白字符(制表/空格/回车))中寻找 \({\tt helloworld}\)(任意一个字母的大小写都行)的子序列出现了多少次,输出结果对 \(10^9+7\) 的余数。 字符串 DP …

2025年环评公司权威推荐排行榜,环评手续,环评报告,环评验收,专业高效服务助力企业合规发展

2025年环评公司权威推荐排行榜,环评手续,环评报告,环评验收,专业高效服务助力企业合规发展 一、行业背景与发展趋势 随着中国生态文明建设的深入推进,环境保护法律法规体系日益完善,环境影响评价作为建设项目环境…

2025年棒球帽厂家推荐排行榜,运动棒球帽,时尚棒球帽,定制棒球帽,防晒棒球帽公司精选榜单

2025年棒球帽厂家推荐排行榜:运动、时尚、定制与防晒棒球帽公司精选榜单 行业背景与发展趋势 棒球帽作为兼具功能性与时尚性的头部配饰,近年来在全球市场持续保持增长态势。随着运动休闲风的盛行和个性化需求的提升,…

常见结论与例题

常见结论 题意:(区间移位问题)要求将整个序列左移/右移若干个位置,例如,原序列为 \(A=(a_1, a_2, \dots, a_n)\) ,右移 \(x\) 位后变为 \(A=(a_{x+1}, a_{x+2}, \dots, a_n,a_1,a_2,\dots, a_x)\) 。 区间的端点…

单芯片方案分享-CH336F-USB拓展坞+百兆网卡+读卡器+100W快充芯片

CH336F是符合USB2.0协议规范的 3端口HUB、USB高速读卡器、USB PD快充和USB转以太网四合一控制器芯片,该芯片集成 3口USB HUB、USB高速SD卡读卡器、USB PD快充和USB百兆以太网扩展功能。简介 CH336F是符合USB2.0协议规…

于状压的线性 RMQ 算法

基于状压的线性 RMQ 算法 严格 \(\mathcal O(N)\) 预处理,\(\mathcal O(1)\) 查询。 template<class T, class Cmp = less<T>> struct RMQ {const Cmp cmp = Cmp();static constexpr unsigned B = 64;usi…

Flink编程模型 - 详解

Flink编程模型 - 详解pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "…

工业4.0下的边缘存储设计:材料就地处理,响应更快更安全

工业4.0下的边缘存储设计:材料就地处理,响应更快更安全pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas…

服务器关机用halt、poweroff还是shutdown -h now?一文帮你说明

我们需要对服务器进行关机的时候,选择必要的关机命令是非常重要的,本文将帮你说明linux系统中halt、poweroff及shutdown -h now 三个命令的区别并描述底层原理 一. halt功能:停止系统运行,但不一定关闭电源。行为:…

KD Tree

KD Tree 在第 \(k\) 维上的单次查询复杂度最坏为 \(\mathcal O(n^{1-k^{-1}})\)。 struct KDT {constexpr static int N = 1e5 + 10, K = 2;double alpha = 0.725;struct node {int info[K];int mn[K], mx[K];} tr[N];…