Taiko taiko

Taiko taikoTaikotaikoDescription拆拆超级喜欢太鼓达人(赛后大家可自行百度规则),玩久了也对积分规则产生了兴趣,理论上连击数越多,分数增加的越快,而且还配合着击打准确度有相应的计算规则,拆拆觉得这些规则太复杂了,于是把规则自行简化了下:对于一段击打序列,我们假设Y为打中,N为未打中(没有良可之分了)我们视连续的n次击中为n连击 相应的分数为1+2+3

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

Taiko taiko

Description

Taiko taiko

拆拆超级喜欢太鼓达人(赛后大家可自行百度规则),玩久了也对积分规则产生了兴趣,理论上连击数越多,分数增加的越快,而且还配合着击打准确度有相应的计算规则,拆拆觉得这些规则太复杂了,于是把规则自行简化了下:

对于一段击打序列,我们假设Y为打中,N为未打中 (没有良可之分了)

我们视连续的n次击中为n连击  相应的分数为 1+2+3+。。。+n

例如序列YNNYYYNYN的总分数为1+1+2+3+1=8

当然 击中是有概率的 我们假定概率始终为P(0<=P<=1)拆拆的击中概率很高的恩恩=w=

于是现在拆拆想知道对于长度为L的序列  击中概率为P时 获得积分的期望是多少

Input

一个整数T(表示T组数据)

接下来的T组数据

接下来T行 每行一个整数L 一个浮点数P

数据范围

1<=T<=1000

1<=L<=1000

0<=P<=1

Output

对于每组数据输出一行1个6位小数 即题目描述的期望

Sample Input

2
2 0.9
3 0.5

Jetbrains全家桶1年46,售后保障稳定

Sample Output

2.610000
2.125000

code:


#include<stdio.h>
int main()
{
    int t,n,a;
    double ans,p;
    scanf("%d",&t);
    while(t--)
    {
        scanf("%d%lf",&n,&p);
        a=1;
        double tem=0;
        while(n--)
        {
            tem=(tem+a)*p;
            a++;
        }
        printf("%.6lf\n",tem);
    }
    return 0;
}

硬币水题II

Time Limit: 1000ms
Memory Limit: 65536KB

64-bit integer IO format: 
%lld      Java class name: 
Main

小胖有一个正反面不对称的硬币。如果抛一次这个硬币,它的正面朝上的概率为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

code:1/(p*(1-p))是得到“一正或一反”决策的次数

思路:推出公式  2*(1/(p*(1-p)*2))2*p*(1-p)是得到“一正一反”的概率,它的倒数就是得到一正一反平均要用的次数,前面乘2是因为每次决策要抛两次硬币

#include <iostream>
#include <stdio.h>
#include <string.h>
using namespace std;

int main()
{
    int cas,i,j;
    double p,n,m;
    scanf("%d",&cas);
    while(cas--)
    {
        scanf("%lf",&p);
        m = (1- p) * p;
        n = 1/m;
        printf("%.2lf\n",n);

    }
    return 0;
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/200702.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 2022最新手机号码正则

    2022最新手机号码正则2022最新手机号码正则

    2022年5月31日
    80
  • windows11修改用户名_win10家庭中文版怎么更改用户名

    windows11修改用户名_win10家庭中文版怎么更改用户名按:新买的电脑一般预装Windows11系统(家庭与学生版),新电脑初次开机使用微软邮箱账号登录,则系统将用户名自动设置成邮箱前几位。我的用户名便是一串数字【231xx】(qq邮箱前5位),看着很不舒服,查了很多方法并最终修改成功!!记录一下修改过程,希望能帮到同样想改用户名的人。首先,强调一点,修改失败可能导致很严重的问题,电脑如有重要资料,务必请提前备份!!!一什么情况需要修改用户名最主要的情况就是初次使用设置了中文用户名。很多软件不支持路径包含中文字……………..

    2022年10月14日
    0
  • mp4 avc格式_sps_pps[通俗易懂]

    mp4 avc格式_sps_pps[通俗易懂]http://blog.csdn.net/sunnylgz/article/details/7680203

    2022年10月17日
    0
  • 指针指向常量_常量指针的四种

    指针指向常量_常量指针的四种const关键字指针常量和常量指针都离不开const关键字,我们先来了解一下什么是const关键字,const被用来定义常量,如果将一个变量加上const关键字,则被修饰的变量的值将无法改变。这个变量的值只能被访问,无法被修改。const关键字可以修饰变量或者指针。下面是const修饰变量的用法:constinta=6;或者intconsta=6;此时变量a…

    2022年10月20日
    0
  • sublimetext3激活码(注册激活)

    (sublimetext3激活码)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlS32PGH0SQB-eyJsa…

    2022年3月25日
    258
  • 安卓中activity的生命周期_activity生命周期调用顺序

    安卓中activity的生命周期_activity生命周期调用顺序前言很高兴遇见你~欢迎阅读我的文章。关于Activity生命周期的文章,网络上真的很多,有很多的博客也都讲得相当不错,可见Activity的重要性是非常高的。事实上,我猜测每个android开发者接触的第一个android组件都是Activity。我们从新建第一个Activity开始,运行了代码,看到模拟机上显示了一个MainActivity标题和一行HolleWorld,从此打开Android世界的大门。本篇文章讲解的重点是Activity的生命周期,在文章的最后也会涉及Activity的设计。不

    2022年8月16日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号