标签:ora using lin none 51nod space png height 技术分享
仅一行,包含一个整数n (2<=n<=1000)。
输出一行,为刚好成环的概率。
2
0.666667
考虑当前已经打了$i$个结,
那么当前还有$2*n-2*i$个鞋带头,
其中你捏住了一个,还剩$2*n-2*i-1$个鞋带头,
这其中只有一个(跟你捏住的在同一根绳上的)鞋带头是不可以打结的,
所以这一步能打一个符合要求的结的概率为$\frac{2*n-2*i-2}{2*n-2*i-1}$.
$i$从$0$循环到$n-2$,当打了$n-1$个结时停下.(因为$n-1$个结时已经成一条链了).
答案就是累乘的结果.
1 /* 2 C++ 3 15 ms 4 2108 KB 5 Accepted 6 2018/10/26 7 17:01:37 8 */ 9 #include<iostream> 10 #include<cstdio> 11 using namespace std; 12 int main() 13 { 14 //freopen("a.in","r",stdin); 15 int n; 16 scanf("%d",&n); 17 double ans=1; 18 for(int i=0;i<n-1;++i) 19 { 20 ans*=(double)(2*n-(2*i)-2)/(2*n-(2*i)-1); 21 } 22 cout<<ans; 23 return 0; 24 }
标签:ora using lin none 51nod space png height 技术分享
原文地址:https://www.cnblogs.com/qwerta/p/9858445.html