hdu 2048 神、上帝以及老天爷

 经典错排问题,算出n个人的排列可能,即求n!。

在本题中设定所有人即n个人全部拍错,即求n错排。

要求:求出其全部错排发生的概率

 n错排 / n! * 100  以小数形式输出即可。

#include<stdio.h>
int main(void)
{
    int i,n,c;
    double a[21],b[21];
    a[0]=a[1]=1;a[2]=2;
    b[0]=b[1]=0;b[2]=1;
    for(i=3;i<21;i++)
    {
        a[i]=a[i-1]*i;
        b[i]=(b[i-1]+b[i-2])*(i-1);
    }
    scanf("%d",&n);
    while(n--)
    {
        scanf("%d",&c);
        printf("%.2f%%\n",b[c]/a[c]*100);
    }
    return 0;
}

  

posted @ 2016-07-23 10:30  马丁黄瓜啊  阅读(149)  评论(0编辑  收藏  举报