概率/期望

http://blog.csdn.net/u014427196/article/details/46425645


http://www.ifrog.net/acm/problem/1055
题意:
一个盒子一开始有n个球,每个球标号唯一,先执行操作1,如果两个球x,y满足|x-y|不在盒子里,那么久把|x-y|放进去,设操作次数为p1,然后执行操作2,不断摸球,直到所有球都被摸过,设操作次数为p2,求p1+p2的期望。
思路:
如果两个球x,y在盒子里,设x>=y,那么gcd(x,y) == gcd(x,x-y),可以推出最后所有数的gcd等价于一开始所有数的gcd,那么操作1的次数就是最大的数/gcd。 
操作2的次数容易推导,设dp[i]表示已经摸了i个球,直到摸完所有球的期望次数。显然有 dp[n]=0,dp[i]=i/n?dp[i]+(n?i)/n?dp[i+1]+1 
化简下dp[n] = 0, dp[i] = dp[i+1]+n/i。 
那么dp[0] = n*Hn,其中Hn是调和级数。 
然后算就行了。 
注意需要特判0。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值