Description
小 P 是个幼儿园老师。有一天,他组织 nnn 个小朋友玩游戏。游戏开始时,每个小朋友伸出两只手,没有手相互拉在一起。
每次,小 P 等概率随机挑选两只空着的手,让这两只手拉在一起。小 P 一直重复这个操作,直到所有的手都拉在一起。
小 P 在成为幼儿园老师之前是个数学专业的博士。因此,他想知道,当所有的手都拉在一起之后,
小朋友们拉成的圈个数的期望是多少?其中,我们规定,一个小朋友左手拉右手的情况也形成一个圈。
由于小 P 忙着和小朋友们玩游戏,他找到了聪明的你,希望你能帮他解决这个问题。
对于 100% 的数据:1≤n≤10181 \le n \le 10^{18}1≤n≤1018。
Solution
非常巧妙的一道题
考虑期望的线性性,我们发现只有第i个小朋友自己牵自己的手才会产生新的环,这样的概率是
1
2
i
−
1
\frac{1}{2i-1}
2i−11
于是答案为
∑
i
=
1
n
1
2
i
−
1
\sum\limits_{i=1}^n\frac{1}{2i-1}
i=1∑n2i−11,这样for有70’
考虑求
∑
i
=
1
n
1
n
\sum\limits_{i=1}^n\frac{1}{n}
i=1∑nn1这个东西,一个近似的解是
ln
(
n
)
+
c
\ln(n)+c
ln(n)+c,其中c是欧拉常数
然后我们求其中的奇数项就用总的减去偶数项,而偶数项就是总的一半/2
然后就可以O(1)了
Code
口胡题解不写code