一共有 7 种元素,每种元素有 a[i] 个,求期望取7 个不同元素的次数
减 6
首先这是条件概率,对于i 来说期望就是 sumi∗Π(sum′else)
其中 sum′ 每次要减一,因为取出了一个元素
只考虑1 2 3 4 5 6 7 这种情况概率就是
suma1×sum−1a2×...×sum−6a7
与此同时,乘上 7! 此外还要乘上sum−6
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| #include<stdio.h> #include<iostream> #include<cmath> #include<cstring> #include<queue> #include<stack> #include<vector> #include<set> #include<map> #include<algorithm> #include<iomanip>
using namespace std;
double ans=1.0;
int sum=0,a[10];
int main() { ios::sync_with_stdio(false); register int i,j; for(i=1;i<=7;i++) cin>>a[i],sum+=a[i]; ans=7*6*5*4*3*2.0; for(i=1;i<=6;i++) ans*=(a[i])/((double)(sum+1-i)); ans*=a[7]; cout<<fixed<<setprecision(4)<<ans<<endl; return 0; }
|