zoukankan      html  css  js  c++  java
  • UVA 11021 /概率

    题意:
      有k只鸟,每只鸟只能活一天,它可以在死之前生[0,n-1]只鸟,生出x只鸟的概率是p[x].问m天后所有的鸟都时光的概率。(m天之前就死了的也算上)。

    输入:T、n、k、m.

    题解:

      每只鸟的的死亡与生幼鸟的概率是相互独立的,那么我们只需要算出一只鸟在m天后死亡的概率f[m]然后pow(f[m],k),就可以了。

    设f[i]代表刚开始只有一只鸟的时候,i天全部死亡的概率;容易得到:f[0]=0;(第零天是不可能的情况)  f[1]=p[0](第一天全部死亡,那么他没有产生鸟)。

    f[2]=p[0]+p[1]*pow(f[1],1)+p[2]*pow(f[1],2)+.......;(第一只鸟产生0只的概率,产生1只的概率并且在(2-1)天后死亡的概率......的和)。

    #include<bits/stdc++.h>
    const int maxn = 1050;
    double f[maxn],p[maxn];
    int N,n,k,m;
    int main ()
    {
        int ic=0;
        scanf("%d",&N);
        while(N--)
        {
            scanf("%d%d%d",&n,&k,&m);
            for(int i = 0;i<n;i++)
                scanf("%lf",&p[i]);
            f[1]=p[0];
            for(int i = 2;i <= m;i++)
            {
                f[i] = 0.0;
                for(int j = 0;j < n;j++)
                    f[i] += p[j]*pow(f[i-1],j);
            }
            printf("Case #%d: %.7f
    ",++ic,pow(f[m],k));
        }
        return 0;
    }
    想的太多,做的太少。
  • 相关阅读:
    ubuntu18 任务栏调到底部
    十六, Oracle约束
    十五, 数据导出导入
    十四, 角色
    十三,权限
    十二, 系统默认参数
    十一,函数
    PL/SQL 九九乘法表
    十,事务和锁
    九, 表查询 三
  • 原文地址:https://www.cnblogs.com/pealicx/p/6192980.html
Copyright © 2011-2022 走看看