• H. 硬币的水问题II


    H. 硬币水题II

    1000ms
    1000ms
    65536KB
    64-bit integer IO format: %lld      Java class name: Main
    Font Size:  

    小胖有一个正反面不正确称的硬币。假设抛一次这个硬币。它的正面朝上的概率为p,反面朝上的概率为1-p。如今。小胖想用这个硬币来产生等概率的决策(50%对50%)。当然,仅仅抛一次是不行的。

    小胖的策略是这种:每一次决策。须要抛硬币两次,假设都是正面朝上或者都是反面朝上,那么就又一次再做一次决策;假设是一正一反,那么假设第一次是正面朝上,就说抛了正面,假设第一次是反面朝上,那么就视为抛了反面。

    这样,就能得到一个公平的决策了。

    如今问题是。给定一个p,小胖平均要抛多少次,才干得到一个决策呢(即不用再抛了)?

    Input

    第一行包括一个整数N(N<=100),表示測试数据的个数。

    接下来包含N行,每行一个測试数据。包含一个3位的浮点数p(0<p<1)。

    Output

    对每个測试数据。输出一行,包含一个浮点数,表示小胖抛硬币的平均次数。

    结果保留两位小数。

    Sample Input

    3
    0.500
    0.800
    0.300
    

    Sample Output

    4.00
    6.25
    4.76
    #include<stdio.h>
    int main()
    {
        double ex,p;
        int n;
        scanf("%d",&n);
        while(n--)
        {
            scanf("%lf",&p);
            ex=1.0/p+1.0/(1-p);
            printf("%.2lf
    ",ex);
        }
    }
    


    版权声明:本文博客原创文章,博客,未经同意,不得转载。

  • 相关阅读:
    Redis主从复制、哨兵Sentinel、集群简单介绍
    Redis集群
    Redis哨兵模式
    Redis主从架构
    Redis持久化方式
    缓存2.2——Redis并发竞争
    DOM内容梳理2
    纯js制作九宫格
    正则表达式内容梳理
    JavaScript之DOM详解
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/4748591.html
Copyright © 2020-2023  润新知