D:苏卿念发红包

首先,题目中已经说得很明确了(按照常理也是)。
当有mm个包,你第kk个抢。k>mk>m的话。显然,平时会显示:来晚了一步,红包已经被领完了 ext{来晚了一步,红包已经被领完了}
就是,已经被第mm个及之前的人领完了。所以说,期望是00

然后,看k<=mk<=m的时候。

我们构造一个函数f(a,b,c)表示剩余a元,还有b个包,你在第c个抢得到的期望f(a,b,c) ext{表示剩余a元,还有b个包,你在第c个抢得到的期望}

于是,我们就有一个期望的转移:

f(n,m,k)=m2n02nmf(nx,m1,k1)  dxf(n,m,k)=frac{m}{2n}*int_{0}^{frac{2n}{m}}f(n-x,m-1,k-1) dx

特别的,当k=1k=1

f(a,b,1)=b2a02abx dxf(a,b,1)=frac{b}{2a}*int_{0}^{frac{2a}{b}}x dx

m=1m=1时,我们这一类里,只有m=k=1m=k=1f(a,1,1)=af(a,1,1)=a


然后我们展开来看:

k!=mk!=m::

f(n,m,k)=m2n02nmm12(nx1)02(nx1)m1m22(nx1x2)  mk+22(nx1...xk2)02(nx1...xk2)mk+2mk+12(nx1...xk1)02(nx1...xk1)mk+1xk dxk dxk1... dx1f(n,m,k)=frac{m}{2n}*int_{0}^{frac{2n}{m}}frac{m-1}{2(n-x_{1})}int_{0}^{frac{2(n-x_{1})}{m-1}}frac{m-2}{2(n-x_{1}-x_{2})} …… frac{m-k+2}{2(n-x_{1}...-x_{k-2})}int_{0}^{frac{2(n-x_{1}...-x_{k-2})}{m-k+2}}frac{m-k+1}{2(n-x_{1}...-x_{k-1})}int_{0}^{frac{2(n-x_{1}...-x_{k-1})}{m-k+1}}x_{k} d_{x_{k}} d_{x_{k-1}} ... d_{x_{1}}

k=mk=m时,积分到:

22(nx1...xm2)02(nx1...xm2)2xm1 dxm1 dxm2... dx1frac{2}{2(n-x_{1}...-x_{m-2})}int_{0}^{frac{2(n-x_{1}...-x_{m-2})}{2}} x_{m-1} d_{x_{m-1}} d_{x_{m-2}} ... d_{x_{1}}

就可以了。


然后……

这怎么做?!!!kk重积分啊,套自适应性辛普森积分?

数据范围一看,TT了啊。

好吧好吧,我们化简一下看看。


先只看后两项:

$frac{m-k+2}{2(n-x_{1}…-x_{k-2})}int_{0}{frac{2(n-x_{1}…-x_{k-2})}{m-k+2}}frac{m-k+1}{2(n-x_{1}…-x_{k-1})}int_{0}{frac{2(n-x_{1}…-x_{k-1})}{m-k+1}}x_{k} d_{x_{k}} d_{x_{k-1}} $

我们开始化简:

mk+22(nx1...xk2)02(nx1...xk2)mk+2mk+12(nx1...xk1)12[2(nx1...xk1)mk+1]2xk dxk dxk1frac{m-k+2}{2(n-x_{1}...-x_{k-2})}int_{0}^{frac{2(n-x_{1}...-x_{k-2})}{m-k+2}}frac{m-k+1}{2(n-x_{1}...-x_{k-1})} *frac{1}{2}*[ frac{2(n-x_{1}...-x_{k-1})}{m-k+1} ]^{2} x_{k} d_{x_{k}} d_{x_{k-1}}

mk+22(nx1...xk2)02(nx1...xk2)mk+2(nx1...xk1)mk+1frac{m-k+2}{2(n-x_{1}...-x_{k-2})}int_{0}^{frac{2(n-x_{1}...-x_{k-2})}{m-k+2}} frac{(n-x_{1}...-x_{k-1})}{m-k+1}

然后,把常数1mk+1frac{1}{m-k+1}提出来,继续拆一个积分号,这里就不写了。

希望自己找一张草稿纸写一下。

神奇的发现。

竟然是那么的相似。

我们很显然的利用数学归纳法。

直接按照相似的公式积第一项,把常数也按照规律写下来。

积分之后,把所有常数消去。

神奇的发现:

f(n,m,k)=nmf(n,m,k)=frac{n}{m}

mmp!!!mmp!!!

(感受到了世界的深深的恶意)

是不是我们算错了?


好,现在请拿起身边的卡西欧计算器。

我们试试样例一:

n=100,m=10,k=3n=100,m=10,k=3

我们把k=1,2,3k=1,2,3都试一下。

 nm=10 frac{n}{m}=10


k=1 :k=1 :

f(100,10,1)=120 020x dx=10f(100,10,1)=frac{1}{20} int_{0}^{20} x d_{x} =10


k=2 :k=2 :

f(100,10,2)=12002092(100x1)02(100x1)9x2  dx2 dx1f(100,10,2)=frac{1}{20}int_{0}^{20} frac{9}{2(100-x_{1})}int_{0}^{frac{2(100-x_{1})}{9}} x_{2} dx_{2} dx_{1}

=120020(100x1)9 dx1 =1180020(100x1)  dx1=10=frac{1}{20}int_{0}^{20} frac{(100-x_{1})}{9} dx_{1} =frac{1}{180}int_{0}^{20}(100-x_{1}) dx_{1}=10


k=3 :k=3 : 算出来也是1010


……

好吧,这道题就是nmfrac{n}{m}了,O1O_{1}搞出来了。

ENDEND

原文地址:https://www.cnblogs.com/ShineEternal/p/10834339.html