Magic Trick - 题解
一道简单的数学概率题。
首先分类讨论选两张牌时的不同情况。
- 拿相同位置上的:\(\frac 1n\) 。
- 第二次拿不同位置上的,以为第一次已经拿了\(nm\),所以要从\(nm-1\)张牌中选出\(m-1\)张。
综上所述,我们可以推出公式:
\[
\frac 1n+\frac{ n-1}{n}\times\frac{m-1}{nm-1}
\]
下面的就是简单的输入输出和代入公式计算了,不再赘述。
但是要注意,当\(m=1\)时,公式就化简变为:
\[\frac{1}{n}
\]
AC CODE(-std=c++14 -O2)
#include<bits/stdc++.h>
using namespace std;
int n,m;
int main()
{
cin>>n>>m;
if(m==1)
{
cout<<fixed<<setprecision(16)<<1.0/(n*1.0);
return 0;
}
cout<<fixed<<setprecision(16)<<1/(n*1.0)+(n-1)/(n*1.0)*(m-1)/((n*m-1)*1.0);
}

浙公网安备 33010602011771号