【NOIP2012模拟10.31】掷骰子

47 篇文章 0 订阅
18 篇文章 0 订阅

Description

有两个人在长度为N的数轴上走路。
每次每个人可以有相等的概率向前走1~m步。
如果超过N他会往回走(参考飞行棋)
先走到N的人赢。
现在先手在x,后手在y。
求先手赢的概率。
N,m,x,y<=2000

Solution

B组的一道题。
然而似乎特别难想。
于是一堆人决定上403去问(被裱)。
刷了一天SAM的我决定跟上去提高一下自己的姿势水平。
然而突然发现自己似乎还没有好好滴思考(看标程)
于是果断回去想(kan)了一发。
然后突然灵稽一动,口胡出了一种似乎是正解的东西啊233
于是你可以脑补,接下来我给全部初中同学连讲3发我口胡出来的DP的场景。
回来发现已经9:30了啊233
咳咳
我们可以考虑逆推。
Fi,j 表示先手走到i后手走到j的概率。
那么我们发现,如果走到可以反弹的范围内的话,所有的状态都是一样的。
这个东西是一个无穷级数,是可以推出来的。
如果i,j都不在就是显然的转移,用二维前缀和来优化。
剩下两种情况就自己yy一下就好了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值