EOJ2938 Math

概率论中的n重伯努力实验

#include<bits/stdc++.h>
using namespace std;

long long C(int m,int n){
    long long res=1;
    for(int i=0;i<n;i++)res*=m-i;
    for(int i=n;i>1;i--)res/=i;
    return res;
}

int main(){
    int t,n;
    double p;
    scanf("%d",&t);
    while(t--){
        scanf("%d%lf",&n,&p);
        double res=0;
        for(int i=n/2+1;i<=n;i++){
            res+=C(n,i)*pow(p,i)*pow(1.0-p,n-i);
        }
        printf("%.3f\n",res);
    }
}

猜你喜欢

转载自www.cnblogs.com/TAMING/p/9242502.html