【HDU - 6558】The Moon(期望dp)

题干:

Random Six is a FPS game made by VBI(Various Bug Institution). There is a gift named "Beta Pack". Mr. K wants to get a beta pack. Here is the rule.
Step 0. Let initial chance rate qq = 2%.
Step 1. Player plays a round of the game with winning rate pp.
Step 2. If the player wins, then will go to Step 3 else go to Step 4.
Step 3. Player gets a beta pack with probability qq. If he doesn’t get it, let qq = min(100%, qq + 2%) and he will go to Step 1.
Step 4. Let qq = min(100%, qq + 1.5%) and goto Step 1.
Mr. K has winning rate pp% , he wants to know what’s the expected number of rounds before he needs to play.

Input

The first line contains testcase number TT (TT ≤ 100). For each testcase the first line contains an integer pp (1 ≤ pp ≤ 100).

Output

For each testcase print Case ii : and then print the answer in one line, with absolute or relative error not exceeding 106106.

Sample Input

2
50
100

Sample Output

Case 1: 12.9933758002
Case 2: 8.5431270393

题目大意:

为了得到一件奖品而玩一个游戏(游戏有好多局),得到奖品后游戏结束。游戏中的每一局都有p%的概率会赢(p是个给定的常数),初始中奖率q=2,如果这一局赢了就抽奖,没抽到就q+2,然后继续游戏的下一局;如果这一局输了就q+1.5。问玩的游戏局数的期望。中奖率最高为100%,也就是说如果这一局赢了且没抽到奖,那q=min(q+2,100%) 如果这一局输了,那q=min(q+1.5,100%)。

解题报告:

设dp[i]代表当前状态的中奖率为 i% 时,得到奖品的期望天数。

因为已知状态是终点的状态,所以倒着dp。考虑初始化,dp[100]=1/p。(当然,注意p上来要先除以100,因为他给的是p%)

又因为此时中奖的概率是100%,也就是说赢即可以中奖,也就是转化成赢的期望局数,赢一局的概率是p,显然这符合几何概型,所以期望局数=1/p。

然后转移就是   dp[i]=          p *       [ q*1+(1-q)*(dp[i+2]+1)] + (1-p) * (dp[i+1.5] + 1) 

分别代表:          赢游戏的前提下   ( 中奖     没中奖         )            没赢游戏

然后化简一下公式就可以了。注意这里因为有0.5不能放到状态中,所以直接都*2,这样状态变成0~200.这样就方便转移了。

AC代码:

#include<cstdio>
#include<iostream>
#include<algorithm>
#include<queue>
#include<stack>
#include<map>
#include<vector>
#include<set>
#include<string>
#include<cmath>
#include<cstring>
#define FF first
#define SS second
#define ll long long
#define pb push_back
#define pm make_pair
using namespace std;
typedef pair<int,int> PII;
double dp[255],p;
int main()
{int T,iCase=0;cin>>T;while(T--) {scanf("%lf",&p); p/=100;double gp = 1.0/p;dp[200] = gp;for(int i = 199; i>=1; i--) {dp[i] = p*((1-i/200.0)*dp[min(i+4,200)]+1) + (1-p)*(dp[min(i+3,200)]+1);}printf("Case %d: %.10f\n",++iCase,dp[4]);}return 0 ;
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/439758.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

动手学无人驾驶(3):基于激光雷达3D多目标追踪

上一篇博客介绍了无人驾驶中的车辆检测算法&#xff08;YOLO模型&#xff09;&#xff0c;该检测是基于图像进行的2D目标检测。在无人驾驶环境感知传感器中还有另一种重要的传感器&#xff1a;激光雷达。今天就介绍一篇无人驾驶中基于激光雷达目标检测的3D多目标追踪论文&#…

【HDU - 6237】A Simple Stone Game(贪心,思维,素因子分解,数学)

题干&#xff1a; After he has learned how to play Nim game, Bob begins to try another stone game which seems much easier. The game goes like this: one player starts the game with NN piles of stones. There is aiai stones on the iith pile. On one turn, the …

换种方法学操作系统,轻松入门Linux内核

计算机已成为现代人日常工作、学习和生活中必不可少的工具。操作系统是计算机之魂&#xff0c;作为用户使用计算机的接口&#xff0c;它负责调度执行各个用户程序&#xff0c;使计算机完成特定的任务&#xff1b;作为计算机硬件资源的管理者&#xff0c;它负责协调计算机中各类…

Apollo进阶课程㊶丨Apollo实战——本机演示实战

原文链接&#xff1a;进阶课程㊶丨Apollo实战——本机演示实战 Apollo是一个开放的、完整的、安全的平台&#xff0c;将帮助汽车行业及自动驾驶领域的合作伙伴结合车辆和硬件系统&#xff0c;快速搭建一套属于自己的自动驾驶系统。 上周阿波君为大家详细介绍了「进阶课程㊵丨A…

【HDU - 5965】扫雷(dp)

题干&#xff1a; 扫雷游戏是晨晨和小璐特别喜欢的智力游戏&#xff0c;她俩最近沉迷其中无法自拔。 该游戏的界面是一个矩阵&#xff0c;矩阵中有些格子中有一个地雷&#xff0c;其余格子中没有地雷。 游戏中&#xff0c;格子可能处于己知和未知的状态。如果一个己知的格子中…

java常见异常类图(分类了Error/RuntimeExecption、check Exception)

Error&#xff1a;表示由JVM所侦测到的无法预期的错误&#xff0c;由于这是属于JVM层次的严重错误&#xff0c;导致JVM无法继续执行&#xff0c;因此&#xff0c;这是不可捕捉到的&#xff0c;无法采取任何恢复的操作&#xff0c;顶多只能显示错误信息。Exception&#xff1a;表…

Apollo进阶课程㊷丨Apollo实战——车辆与循迹驾驶能力实战

原文链接&#xff1a;进阶课程㊷丨Apollo实战——车辆与循迹驾驶能力实战 循迹自动驾驶是指让车辆按照录制好的轨迹线进行自动驾驶&#xff0c;其涉及到自动驾驶中最基本的底盘线控能力、定位能力、控制能力&#xff0c;是自动驾驶系统的一个最小子集。 上周阿波君为大家详细介…

【HDU - 5961】传递(图,思维,暴力,枚举点)

题干&#xff1a; 我们称一个有向图G是传递的&#xff0c;当且仅当对任意三个不同的顶点a,,若G中有 一条边从a到b且有一条边从b到c ,则G中同样有一条边从a到c。 我们称图G是一个竞赛图&#xff0c;当且仅当它是一个有向图且它的基图是完全图。换句 话说&#xff0c;将完全图每…

Java--对象内存布局

在HotSpot虚拟机中&#xff0c;对象在内存中的存储布局可以分为3块区域&#xff1a;对象头部、实例数据、对齐填充。 一、对象头部Header的布局 Mark WordClass 指针在32位系统下&#xff0c;上面两部分各占4B; 在64位系统中&#xff0c;Mark Work占4B&#xff0c;class指针在…

Apollo进阶课程㊸丨Apollo实战——障碍物感知和路径规划能力实战

原文链接;进阶课程㊸丨Apollo实战——障碍物感知和路径规划能力实战 环境感知在自动驾驶汽车应用中占据了核心地位。一辆车要实现自动驾驶&#xff0c;障碍物感知是最基础也是最核心的功能。 上周阿波君为大家详细介绍了「进阶课程㊷丨Apollo实战——车辆与循迹驾驶能力实战」…

3.1)深度学习笔记:机器学习策略(1)

目录 1&#xff09;Why ML Strategy 2&#xff09;Orthogonalization 3&#xff09;Single number evaluation metric 4&#xff09;Satisficing and optimizing metrics 5&#xff09;训练/开发/测试集划分&#xff08;Train/dev/test distributions&#xff09; 6&…

【HDU - 5968】异或密码(思维,STLmap)

题干&#xff1a; 晨晨在纸上写了一个长度为N的非负整数序列{aiai}。对于这个序列的一个连续子序列{al,al1,…&#xff0c;aral,al1,…&#xff0c;ar}晨晨可以求出其中所有数异或的结果 alxoral1xor...xoraralxoral1xor...xorar其 中xor表示位异或运算&#xff0c;对应C、C、…

接口和抽象类是否继承了Object

我们先看一下Java的帮助文档对于Object的描述&#xff1a; Class Object is the root of the class hierarchy. Every class has Object as a superclass. All objects, including arrays, implement the methods of this class. Object 类是类层次结构的根类。每个类都使用 …

3.2)深度学习笔记:机器学习策略(2)

目录 1&#xff09;Carrying out error analysis 2&#xff09;Cleaning up Incorrectly labeled data 3&#xff09;Build your first system quickly then iterate 4&#xff09;Training and testing on different distributios 5&#xff09;Bias and Variance with m…

【CodeForces - 674B 】Bear and Two Paths(贪心,思维,水题)

题干&#xff1a; 第一行给出N和M代表有N个难度1~N的题目&#xff0c;M代表有M个约束。接下来M行&#xff0c;每行两个数代表这一个约束的两个题目。 代表难度的数字越大&#xff0c;题目越难。现在要求你将N个题目分成不重不漏的两组(div1和div2)&#xff0c;要求1每组不能为…

4.1)深度卷积网络:卷积神经网络基础

目录 1&#xff09;Computer vision 2&#xff09;Edge detection example&#xff08;理解&#xff09; 3&#xff09;More edge detection 4&#xff09;Padding&#xff08;重点&#xff09; 5&#xff09;Strided convolutions&#xff08;重点&#xff09; 6&#x…

【2019icpc南京站网络赛 - H】Holy Grail(最短路,spfa判负环)

题干&#xff1a; As the current heir of a wizarding family with a long history,unfortunately, you find yourself forced to participate in the cruel Holy Grail War which has a reincarnation of sixty years.However,fortunately,you summoned a Caster Servant wi…

4.2)深度卷积网络:实例研究

目录 1&#xff09;Why look at case studies? 2&#xff09;Classic networks&#xff08;理解&#xff09; 3&#xff09;ResNets&#xff08;理解&#xff09; 4&#xff09;Why ResNets work?&#xff08;经典&#xff09; 5&#xff09;Networks in Networks and 1…

10种常见的软件架构模式

有没有想过要设计多大的企业规模系统&#xff1f;在主要的软件开发开始之前&#xff0c;我们必须选择一个合适的体系结构&#xff0c;它将为我们提供所需的功能和质量属性。因此&#xff0c;在将它们应用到我们的设计之前&#xff0c;我们应该了解不同的体系结构。 什么是架构模…

4.3)深度卷积网络:目标检测

目录 1&#xff09;Object localization&#xff08;重点&#xff09; 2&#xff09;Landmark detection 3&#xff09;Object detection 4&#xff09;Convolutional implementation of sliding windows 5&#xff09;Bounding box prediction&#xff08;重点&#xff0…