概率期望训练之一

https://www.luogu.org/problem/P3802

我只想骂这个出题人,题目意思都不说清楚,其实很简单的一道题,害的我一直想不通

注意这个a数组是该属性晶石的个数

而施法的次数就是Σai

考虑第一个放a1,则有a1/n的概率选到

第二个放a2,则有a2/n-1的概率选到,之后同理

但注意这里放我没说放在第几个,我只说它是第几个选到

所以这里放的顺序有7!个放法

但注意这只是单方面的考虑7个施法

因为又有n-6个7个施法的开头

所以再乘上n-6

code:

#include <cstdio>
double a[8],s,ans=1;
int main()
{
    for(int i=1;i<=7;i++)
    {
        scanf("%lf",a+i);
        s+=a[i];
    }
    for(int i=1;i<=6;i++)
        ans=ans*a[i]/(s+1-i)*double(i);
    ans=ans*a[7]*7.0;
    printf("%.3lf\n",ans);
    return 0;
}
posted @ 2019-10-18 15:39  wzx_believer  阅读(122)  评论(0编辑  收藏  举报