巴什博奕
2015-12-17 15:24
274 查看
最近看了一些取物的问题,甚是有趣,整理一下,这里先说说巴什博奕。
首先,简单介绍一下什么是巴什博奕:有一堆物品(可以广泛理解成任何可计数的东西),n个,有两个玩家,每个人按照最好的方式依次从这堆物品中取东西,至少1个最多m个。将东西取完的哪一个人获胜。
过程很简单,也很容易看出来,如果n=m+1,那么第一个人根本不可能赢得这个游戏。
如果第一个人想赢,那么他肯定希望在自己取完之后,让第二个人面对n=m+1的局面。由此,我们能得到法则:如果n=(m+1)+t,在这里0<t<=m且为自然数,那么第一个人一定能赢得胜利。
更一般的情况,我们将自然数n写成如下的表达式n=(m+1)*w+t,w也是自然数。
如果t=0,简单的说,第一个人无论取多少,第二个人都能把剩下的物品的数目变成(m+1)*e,0<=e<w且为自然数。主动权仍然在第二个人手中。同之前说的,第一个人要赢,必须保证存在这么一个t,使得0<t<=m。
最后,得出结论:只有当 n=(m+1)*w+t 时,且0<t<=m且为自然数,w是自然数,第一个人能取得游戏胜利。
首先,简单介绍一下什么是巴什博奕:有一堆物品(可以广泛理解成任何可计数的东西),n个,有两个玩家,每个人按照最好的方式依次从这堆物品中取东西,至少1个最多m个。将东西取完的哪一个人获胜。
过程很简单,也很容易看出来,如果n=m+1,那么第一个人根本不可能赢得这个游戏。
如果第一个人想赢,那么他肯定希望在自己取完之后,让第二个人面对n=m+1的局面。由此,我们能得到法则:如果n=(m+1)+t,在这里0<t<=m且为自然数,那么第一个人一定能赢得胜利。
更一般的情况,我们将自然数n写成如下的表达式n=(m+1)*w+t,w也是自然数。
如果t=0,简单的说,第一个人无论取多少,第二个人都能把剩下的物品的数目变成(m+1)*e,0<=e<w且为自然数。主动权仍然在第二个人手中。同之前说的,第一个人要赢,必须保证存在这么一个t,使得0<t<=m。
最后,得出结论:只有当 n=(m+1)*w+t 时,且0<t<=m且为自然数,w是自然数,第一个人能取得游戏胜利。
相关文章推荐
- 如何循环遍历winForm中所有窗体的名称,所有活动的窗体
- Win7配置CUDA并搭建基于Theano框架的GPU加速环境
- Linux 快捷键
- linux less命令
- hdu1358Period(KMP)
- cin输入的问题
- android-async-http AsyncHttpClient介绍和使用
- Android开发艺术-第六章Drawable读书笔记
- Genymotion 5.0 ARM-Translation
- removing-删除
- NFC基础
- Android View移动的六种方法小结
- 360搜索联盟推出“图片排行榜”新广告样式
- 1003. 我要通过!(20)练习
- UITableViewCell自适应内容高度
- ABP理论学习之日志记录
- DPDK内存管理-----(二)rte_mempool内存管理
- Ebtables使用手册
- Android Intent传递数据
- Android 使用MediaPlayer 播放 视频