问题描述
一个长度为 1 的线段上随机撒 n−1 个点,形成了 n 条线段,那么这 n 条线段中第 k 短(k≤n)的线段期望长度是多少呢?答案是:
1nk−1∑i=01n−i
例如, n 条线段中最短的线段期望长度是 1n2,第二短的期望是 1n(1n+1n−1) ,依此类推。
事实上,这 n 条线段期望的长度分布是指数分布,可以类比玻尔兹曼分布,少数较长的线段占据了大部分长度。而如果按照从左往右的顺序的话,每条线段长度都服从相同的概率分布,概率密度函数都是 f(x)=(n−1)⋅(1−x)n−2 。
这里只证明第 k 短的期望。推导过程很大一部分借鉴了这篇博客。当然北航也写过类似的题解:
[2015-2016 Petrozavodsk Winter Training Camp, Moscow SU Trinity Contest](http://clatisus.com/2015-2016 Petrozavodsk Winter Training Camp, Moscow SU Trinity Contest)
证明
我们采用数学归纳法的思路。
- 当 k=1 时,我们先证明 n 条线段中最短的线段期望长度是 1n2 。
不妨考虑最短长度不小于 x 时的概率如何求解。实际上相当于把每条线段都预留上 x 的长度,剩下的就是一个随机分配的问题了,每条线段都有 (1−nx) 的概率,即:
P(L1≥x)=P(L1≥x,L2≥x,⋯,Ln≥x,L1+L2+⋯+Ln=1)=(1−nx)n−1
求最短线段的期望长度就是这样一个积分:
E(L1)=∫1n0xP(L1=x)dx =∫1n0P(L1≥x)dx =∫1n0(1−nx)n−1dx =1n2
由此, k=1 的情况得到了证明。
- 假设 k=d 的情况,上述结论成立,我们考虑 k=d+1 的情况。
求第 d+1 短的期望长度,我们只需要先把最短的一段截走,之后就是对于 n−1 条线段的第 d 短的问题了。
E(Ld+1)=E(L1)+(1−n⋅E(L1))⋅1n−1d∑i=11n−i =1n2+1nd∑i=11n−i =1nd∑i=01n−i
由此,命题得证。
例题 AGC 032F
你有一个大小为 1 的圆形比萨,你首先将会切 n 刀,每一刀都是随机一个 [0,2π) 的角度 θ,然后从圆心沿着水平方向逆时针 θ 的角度切下去。n 刀过后,比萨被切成了 n 份。
之后,你可以选取面积之和最接近 13 的连续的若干份比萨作为你的食物。问你吃到的比萨大小与 13 的距离的期望是多少,即 |x−13| 的期望。
解答:
ans=m∑i=113i⋅n(n−i+1)
AC代码
1 |
|
Related Issues not found
Please contact @YangDong02 to initialize the comment