电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

博弈论试题集

博弈论试题集_第1页
1/35
博弈论试题集_第2页
2/35
博弈论试题集_第3页
3/35
(一)巴什博奕(Bash Game):只有一堆n 个物品,两个人轮流从这堆物品中取物,规定每次至少取一个,最多取m 个。最后取光者得胜。 显然,如果 n=m+1,那么由于一次最多只能取m 个,所以,无论先取者拿走多少个,后取者都能够一次拿走剩余的物品,后者取胜。因此我们发现了如何取胜的法则:如果 n=(m+1)r+s,(r 为任意自然数,s≤m),那么先取者要拿走 s 个物品,如果后取者拿走 k(≤m)个,那么先取者再拿走 m+1-k 个,结果剩下(m+1)(r-1)个,以后保持这样的取法,那么先取者肯定获胜。总之,要保持给对手留下(m+1)的倍数,就能最后获胜。 这个游戏还可以有一种变相的玩法:两个人轮流报数,每次至少报一个,最多报十个,谁能报到 100 者胜。 取石子(一) 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 一天,TT 在寝室闲着无聊,和同寝的人玩起了取石子游戏,而由于条件有限,他/她们是用旺仔小馒头当作石子。游戏的规则是这样的。设有一堆石子,数量为 N(1<=N<=1000000),两个人轮番取出其中的若干个,每次最多取M 个(1<=M<=1000000),最先把石子取完者胜利。我们知道,TT 和他/她的室友都十分的聪明,那么如果是 TT 先取,他/她会取得游戏的胜利么? 输入 第一行是一个正整数 n 表示有n 组测试数据 输入有不到 1000 组数据,每组数据一行,有两个数 N 和 M,之间用空格分隔。 输出 对于每组数据,输出一行。如果先取的 TT 可以赢得游戏,则输出“Win”,否则输出“Lose”(引号不用输出) 样例输入 2 1000 1 1 100 样例输出 Lose Win 最优解: #inclu de u sing namespace std; int main() { int k; long m,n; cin>>k; while(k--) { cin>>n>>m; if(n%(m+1)==0) cout<<"Lose"< int n; int main() { while...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

博弈论试题集

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部