题目大意
有n条这样的超级蚯蚓,现在重复n次以下操作:随机抽出两条超级蚯蚓,使它们的头或尾相连。n次之后將不再有条状蚯蚓,n条超级蚯蚓连接成了一些环。那么有多大概率刚好所有这些超级蚯蚓只形成了一个环?
解题思路
每次选择都不能选同一条蚯蚓的头尾,概率为(2n−2)/(2n−1)(2n-2)/(2n-1)(2n−2)/(2n−1)
O(n)计算答案即可
Accepted codeAccepted\ codeAccepted code
#include<cstdio>
using namespace std;
int n;
double ans = 1;
int main() {
scanf("%d", &n);
for (int i = n; i >= 2; --i)
ans *= (double)(i * 2 - 2) / (i * 2 - 1);
printf("%.6lf", ans);
}
这篇博客探讨了一个有趣的概率问题,涉及n条超级蚯蚓通过随机连接最终形成一个环的概率。作者通过数学计算得出每次连接的概率,并用O(n)的时间复杂度求解了该问题。代码实现中,使用了动态更新的方法来逐步计算所有蚯蚓形成一个环的概率,最终输出概率值。

338

被折叠的 条评论
为什么被折叠?



