给定一段长为(1)的区间,计算下列步骤的期望操作步数
- 随机在([0,L])中生成两个数(a, b),其中(L)是区间的剩余长度
- 令(L =L- max{a, b}),如果(x < c),那么退出步骤
对于参数(c=x),记(F(x))为此问题的答案,试计算(F(40^{-1})),保留十位小数
简单的大学数学题...
设(E(x))为剩余区间长度为(x)时的答案,所求即(E(1))
设随机变量(Y = max{a,b})
显然(E(x) = egin{cases} 1 + int_0^x E(x-t)P(Y=t) mathrm{d} t & (x geqslant c)\0 & (0leqslant x<c)end{cases})
考虑求(P(Y=t)),根据定义,我们有(P(Y=t) mathrm{d}t= mathrm{d} P(Y leq t))
而(P(Y leq t) = (frac{t}{x})^2),故(P(Y = t) = frac{2t}{x^2})
那么原式等价于(E(x) = egin{cases} 1 + int_0^x E(x-t)frac{2t}{x^2} mathrm{d} t & (x geqslant c)\0 & (0leqslant x<c)end{cases})
我们只考虑(x geq c)的情况,也即(E(x)=1 + int_0^x E(x-t)frac{2t}{x^2} mathrm{d} t)
稍作变换,(E(x)=1 + int_0^x E(t)frac{2(x-t)}{x^2} mathrm{d} t)
继续,(x^2E(x) = x^2 + int_0^x E(x-t)2t mathrm{d} t)
两边对(x)求微分,得(x^2 mathrm{d}E(x) + 2xE(x) = 2x + 2int_0^x E(t) mathrm{d} t)
我们记(y=int_0^x E(t) mathrm{d} t),那么考虑解微分方程(x^2y'' + 2xy' = 2x + 2y)
当然,首选是数值逼近
作变量替换(x = e^t),得(D(D-1)y + 2Dy = 2e^t + 2y)
即(D^2y+Dy-2y = 2e^t),该方程的特解为(y = frac{2}{3}te^t)
而特征方程(r^2 + r - 2=0)的两根为(1)和(-2),故通解为(y=c_1e^t + c_2e^{-2t})
整合,我们得到(y = frac{2}{3}te^t + c_1e^t + c_2e^{-2t}=frac{2}{3}x ln x + c_1x + frac{c_2}{x^2})
对应的有(E(x) = y' = frac{2}{3} ln x + c_1 + frac{c_2}{x^3})
此时有两个未定的常数,条件仿佛只有(E(c) = 1)
但注意到,我们的运算过程保证(E(x))是可微的,因此还需补上(E'(c^{+})=0)的条件
代入(c = frac{1}{40})即可