经典博弈
来源:互联网 发布:2016网络知识竞赛 编辑:程序博客网 时间:2024/06/01 09:04
巴什博奕(Bash Game):只有一堆n个物品,两个人轮流从这堆物品中取物,规
定每次至少取一个,最多取m个。最后取光者得胜。
如果n%(m+1)==0,先手输。
威佐夫博奕(Wythoff Game):有两堆各若干个物品,两个人轮流从某一堆或同
时从两堆中取同样多的物品,规定每次至少取一个,多者不限,最后取光者得胜。
设堆中物品少的为a,多的为b,如果a==(b-a)*(1+sqrt(5.0))/2,先手输。
- LL tmp[3] = {618033988,749894848,204586834};
- LL MOD = 1000000000;
- int main()
- {
- int T;
- LL m, n;
- cin>>T;
- while(T--)
- {
- cin>>m>>n;
- if(m < n)
- swap(n, m);
- LL cha = m - n;
- LL ta = cha/MOD, tb = cha%MOD;
- LL tp = tb*tmp[2];
- tp = ta*tmp[2] + tb*tmp[1] + tp/MOD;
- tp = ta*tmp[1] + tb*tmp[0] + tp/MOD;
- tp = cha + ta*tmp[0] + tp/MOD;
- if(tp == n)
- puts("B");
- else
- puts("A");
- }
尼姆博奕(Nimm Game):有n堆各若干个物品,两个人轮流从某一堆取任意多的
物品,规定每次至少取一个,多者不限,最后取光者得胜。
所有堆的异或和==0,先手输。
0 0
- 经典博弈
- 经典博弈!
- 经典博弈
- 经典博弈
- 几个经典的博弈
- 经典博弈(转)
- 几个经典的博弈
- 几个经典的博弈
- poj1067(经典博弈问题)
- 博弈经典例子
- 经典博弈a
- 三个经典的博弈问题
- 三个经典的博弈问题
- 三种经典博弈问题
- hdu 4664 Triangulation 经典博弈
- 三种经典博弈问题
- 三种经典的博弈问题
- 博弈问题及SG函数(经典)
- 详解likely和unlikely函数
- Javascript模块化编程(三):require.js的用法
- MySQL入门——修改数据表4:添加主键约束、显示表结构、添加唯一约束
- “设为首页”和“加入收藏”功能的兼容代码
- 剑指offer09--输入n后输出所以n位数
- 经典博弈
- hadoop fs.trash 详解
- Hibernate学习(1--8)
- 设置 xcode 上debug tab
- java按文件夹下日志容量大小删除部分日志
- 小技巧。
- 《学习OpenCV》课后习题解答6
- 利用注解初始化View对象
- javascript 闭包