博弈论(巴什博奕,威佐夫博弈,尼姆博弈)
巴什博奕(Bash Game):
只有一堆n个物品,两个人轮流从中取物,规定每次最少取一个,最多取m个,最后取光者为胜
举一个最简单的例子就是,当n=m+1时,此时不管先手取多少,后手都能把剩下的取完,拓展到n等于m+1的倍数时,不管先手取多少,后手都可以取(m+1减去先手取的个数)个,最后先手一定会面临n=m+1的情况,此时先手必败,否则先手必胜
程序代码:
#include<stdio.h>
int main()
{int n,m;while(scanf("%d%d",&n,&m)!=EOF){if(n%(m+1)==0) printf("先手必败\n");else printf("先手必胜\n");}return 0;
}
威佐夫博弈(Wythoff Game):
有两堆各若干的物品,两人轮流从其中一堆取至少一件物品,至多不限,或从两堆中同时取相同件物品,规定最后取完者胜利
这有一个公式:t=(int)((a-b)*(1.0+sqrt(5.0))/2.0);让t与较小堆石子数相比,如果相等先手必败,否则先手必胜
程序代码:
#include<stdio.h>
#include<math.h>
int main()
{int a,b,t;while(scanf("%d%d",&a,&b)!=EOF){if(a<b) {a^=b;b^=a;a^=b;}t=(int)((a-b)*(1.0+sqrt(5.0))/2.0);if(t==b) printf("先手必败\n");else printf("先手必胜\n"); }return 0;
}
尼姆博弈(Nimm Game):
有任意堆物品,每堆物品的个数是任意的,双方轮流从中取物品,每一次只能从一堆物品中取部分或全部物品,最少取一件,取到最后一件物品的人获胜
把每堆物品数全部异或起来,如果得到的值为0,那么先手必败,否则先手必胜
程序代码:
#include<stdio.h>
int main()
{int n,m,i,count;while(scanf("%d",&n)!=EOF){count=0;for(i=0;i<n;i++){scanf("%d",&m);count^=m;}if(count==0) printf("先手必败\n");else printf("先手必胜\n");}return 0;
}
博弈论(巴什博奕,威佐夫博弈,尼姆博弈)相关推荐
- 四种基础博弈 巴什博奕+威佐夫博奕+斐波那契博弈+K倍博弈
博弈论(Game Theory) 博弈论是指研究多个个体或团队之间在特定条件制约下的对局中利用相关方的策略,而实施对应策略的学科.有时也称为对策论,或者赛局理论,是研究具有斗争或竞争性质现象的理论和方 ...
- 博弈的三个巨人 巴什博奕 威佐夫博奕 尼姆博奕
转载一篇有关博弈写得不错的文章,同时也对文章中的错误部分修正. 博客正容:[一](先来苦涩的理论) (一)巴什博奕(Bash Game):只有一堆n 个物品,两个人轮流从这堆物品中取物, 规定每次至少 ...
- 三大数学博弈:巴什博奕 威佐夫博奕 尼姆博奕
有一种很有意思的游戏,就是有物体若干堆,可以是火柴棍或是围棋子等等均可.两个 人轮流从堆中取物体若干,规定最后取光物体者取胜.这是我国民间很古老的一个游戏 ,别看这游戏极其简单,却蕴含着深刻的数学原理 ...
- 基础博弈论(巴什博奕、斐波那契博弈、威佐夫博奕、尼姆博奕)
[前言] 今天才算是搞明白了(??)最基本的四种博弈 [小结] 1.巴什博奕(Bash Game) 一堆中取石子,两个人轮流取石子,每次取石子量至少为1,至多为m,先取完者胜利. 当n%(m+1)== ...
- 博弈论(巴什博奕/尼姆博奕/威佐夫博奕)详解
博弈论 ,是经济学的一个分支,主要研究具有竞争或对抗性质的对象,在一定规则下产生的各种行为.博弈论考虑游戏中的个体的预测行为和实际行为,并研究它们的优化策略 通俗地讲,博弈论主要研究的是:在一个游戏中 ...
- 博弈论总结 必胜点 SG函数 巴什博弈 尼姆博弈
摘要 主要算法思想,应用领域,近年来的出题情况 博弈是信息学和数学试题中常会出现的一种类型,算法灵活多变是其最大特点,而其中有一类试题更是完全无法用常见的博弈树来进行解答. 寻找必败态即为针对此类试题 ...
- 数学--博弈论--巴什博奕(Bash Game)
终于也轮到我做游戏了,他们做了好几个月的游戏了. 巴什博弈: 两个人做游戏,取石子,一个人最多可以可以取M个,至少取1个,最后取完的赢. 显然,如果n=m+1,那么由于一次最多只能取m个,所以,无论先 ...
- 博弈-尼姆博弈(nimm)
有n堆若干个物品,两个人轮流从某一堆取任意多的物品,规定每次至少取一个,多者不限,最后取光着获胜. 奇异局势:无论谁面对奇异局势都必然失败. a1^a2^···^an==0(奇异局势),先手必败. 如 ...
- 博弈论基础知识: 巴什博奕+斐波那契博弈+威佐夫博奕+尼姆博弈(及Staircase)
博弈论基础知识: 巴什博奕+斐波那契博弈+威佐夫博奕+尼姆博弈(及Staircase) 转载自: http://tieba.baidu.com/p/1474319443 http://blog.sin ...
- 【小组专题二:博弈论入门综述(1)】NP状态 | SG函数 | 巴什博奕、威佐夫博弈、斐波那契博弈、Nim游戏、SJ定理
博弈论综述[1] 前言 博弈与博弈论 博弈树 NP状态 SG函数(Sprague-Grundy) Sprague-Grundy Theorem 巴什博奕 Bash Game 威佐夫博弈 扩展威佐夫博弈 ...
最新文章
- mysql timestamp 晚8小时_mysql插入timeStamp类型数据时间相差8小时的解决办法
- linux 启动rabbitmq 报错:
- JS中获得窗口属性的方法
- matlab求借带参数的方程组
- python3异步协程爬虫,simpyder
- ZooKeeper 3.0.0发行说明
- 配色方案|平板羽毛集,为你的下个作品做安排
- python 字符串 类型互相转换 str bytes 字符串连接
- 【比赛】百度之星2017 复赛
- docker镜像与容器的区别
- 中英文对照 —— 医学与医院
- 20175320 2018-2019-2 《Java程序设计》第8周学习总结
- python自动化接口测试excel脚本_python+requests+excel 实现接口自动化测试
- eda技术试卷_EDA技术试题库
- 【SEU程序设计课笔记】 Mooc - Chapter 5 - (EX) - 猜数字游戏
- html 网页公式编辑软件,LaTeX 公式编辑器网页版
- 机器学习、数据挖掘、神经网络、人工智能和模式识别之间,主要是什么关系
- intel edison 设置wifi自动连接
- 淘宝和拼多多同类别测评
- chrony时间同步