FZU2132 (概率论)

来源:互联网 发布:js 数组输出到html 编辑:程序博客网 时间:2024/05/16 07:51

Description

LQX在做作业时遇到一个难题不会做,请你帮她计算一下:在N个独立地分布于0和1之间的随机变量排为非递减顺序之后,这些变量中第M个小于等于x的概率是多少?

Input

第一行一个整数T(T<=1000),表示有T组数据。

每组数据一行,依次是N M x(1<=M<=N<30, 0<x<1),以空格隔开。

Output

每组数据对应一行输出,即概率是多少,四舍五入保留4位小数。

Sample Input

31 1 0.32 1 0.52 2 0.8

Sample Output

0.30000.75000.6400
#include<stdio.h>#include<math.h>double f(int n){    int i;    double s=1;    for(i=1;i<=n;i++)    {        s=s*i;    }    return s;}double c(int n,int m){    double res=f(n)/(f(m)*f(n-m));    return res;}int main(){    int t,i;    int  n,m;    double x,p;    while(scanf("%d",&t)!=EOF)    {        while(t--)        {            p=0;注意p=0的位置            scanf("%d%d%lf",&n,&m,&x);            for(i=m;i<=n;i++)            {                p=p+c(n,i)*pow(x,i)*pow(1-x,n-i);            }            printf("%.4f\n",p);        }    }}


0 0
原创粉丝点击