n条鞋带有2*n的端点:
先 任选2个端点有 C( 2*n , 2 ) 即 n * ( 2*n - 1 ) 个,但是这里面含有来自一条鞋带的情况,减去n中,所以符合条件的有 n * ( 2*n - 1 )-n= 2*n * (n-1)种,故而概率为:(2*n * (n-1))/( n * ( 2*n - 1 )) 种
这是一次的,还需要继续执行n-1次。
#include<bits/stdc++.h>
int main()
{
int i,n;
double ans;
while(~scanf("%d",&n))
{
ans=1;
for(i=0;i<n-1;i++)
{
ans*=(double)2*(n-1-i)/(2*n-1-2*i);
}
printf("%.6lf\n",ans);
}
return 0;
}

本文探讨了1639绑鞋带问题,分析了n条鞋带的2*n端点如何正确配对的数学概率。通过C语言程序实现,详细展示了计算过程,适用于算法理解和概率论研究。
305

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



