博弈小题目

打算写篇有关博弈的小题目的汇总。手头现只有一道,以后慢慢更新。

1. 有n个硬币,A、B两个人轮流摸,每次可以摸1~m个,摸到最后一个硬币的算输。求A的必胜策略。

答案,令 r = n%(m+1)。 如果r == 0,A先摸m个必胜;如果r == 1,A无必胜策略,B有必胜策略。如果r>1, A先摸r-1个必胜。

思路就是普通的逆推。首先要想办法最后只留1个硬币并且轮到B摸,那么就需要在倒数第二轮给B留下m+2个硬币,这样B在倒数第二轮摸i个,A只需要摸m+1-i个就可以达到最后留1个给B的效果。依次类推,在倒数第j轮,只要给B留下(j-1)(m+1)+1个硬币就必胜。总之,k为整数,每次给B留k(m+1)+1个让他摸,就可以必胜。

因此当r==0或者r>1时,先摸m个或者r-1个,就能留下k(m+1)+1个给B,必胜。但如果r==1,则B有必胜策略,所以A肯定没有必胜策略;B的策略可以是,每次A摸i个,B就摸m+1-i个,这样总是把k(m+1)+1个留给A去摸,则B必胜。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值