zoukankan      html  css  js  c++  java
  • uva 10056 What is the Probability?

    数学题(概率,精度)

    题意:n个人丢骰子,丢到某个点数为赢然后结束,从第1个人开始丢然后依次下去,然后循环回来,直到有人赢为止。输入n个赢,每个人丢到目标点数的概率,第m个人,求第m个人赢的概率

    算出在第一轮中第m个人赢的概率q1

    算出第2轮中第m个人赢的概率q2

    ……………………

    算出第k轮中第m个人赢的概率qk

    ans=q1+q2+q3+q4……+qk

    其中要设置一个精度qk<E , E的精度随便搞一个都差不多了

    #include <cstdio>
    const double E=1e-10;
    
    int main()
    {
        int T,n,m,c;
        double p,ans,t,q;
        scanf("%d",&T);
        while(T--)
        {
            scanf("%d%lf%d",&n,&p,&m);
            t=1;  
            for(int i=1; i<=n; i++) t*=(1-p); 
            c=0; ans=0;
            while(1)
            {
                q=1;
                for(int i=0; i<c; i++) q*=t;
                for(int i=1; i<m; i++) q*=(1-p);
                q*=p;
                if(q<E) break;
                else    ans+=q;
                c++;  
            }
            printf("%.4f\n",ans);
        }
        return 0;
    }
  • 相关阅读:
    用户场景分析
    人月神话阅读笔记03
    钢镚儿开发的最后一天
    钢镚儿开发的第九天
    4.25第10周周总结
    5号总结
    4号总结(3)
    4号总结(2)生成apk
    4号总结(1)
    3号寒假总结
  • 原文地址:https://www.cnblogs.com/scau20110726/p/2892176.html
Copyright © 2011-2022 走看看