题意:

有 n 个操作,有 Ai 的概率成功,连续成功 x 次 对答案的贡献是 x ^ 3,断掉就要重新记,求期望的答案  ( 期望DP )这道题和 bzoj3450一样,题意也一样,不过要注意的是平方的期望不等于期望的平方!既然E(x^2)!=(E(x))^2。

分析:第i次点击可能成功也可能失败;

第i次点击时的长度,设第i-1次点击时的长度为x;

len=(1-pi)*0+pi*(x+1);

第i次点击时的得分dp[i]=(1-pi)*dp[i-1]+pi*len^3

=pi*((x+1))^3

=pi*(x^3+3x^2+3x+1)

=pi*(dp[i-1]+3x^2+3x+1)

那么想要完成递推还需要维护x^2、x。

#include<algorithm>
#include<iostream>
#include<cstring>
#include<cstdio>
#include<cmath>
using namespace std;
#define N 100005int n;
double p[N],f[N],g[N],h[N];int main()
{scanf("%d",&n);for (int i=1;i<=n;++i) scanf("%lf",&p[i]);for (int i=1;i<=n;++i){g[i]=p[i]*(g[i-1]+1);//维护xh[i]=p[i]*(h[i-1]+2*g[i-1]+1);维护x^2f[i]=p[i]*(f[i-1]+3*h[i-1]+3*g[i-1]+1)+(1-p[i])*f[i-1];}printf("%.1lf\n",f[n]);
}

【BZOJ4318】OSU!【期望DP】相关推荐

  1. [洛谷CF235B] Let‘s Play Osu! {期望DP}

    题目 https://www.luogu.org/problemnew/show/CF235B 解题思路 跟[洛谷 1654] OSU! {期望DP}一样. 代码 #include<cstdio ...

  2. 【bzoj4318】OSU! 期望dp

    题目描述 osu 是一款群众喜闻乐见的休闲软件.  我们可以把osu的规则简化与改编成以下的样子:  一共有n次操作,每次操作只有成功与失败之分,成功对应1,失败对应0,n次操作对应为1个长度为n的0 ...

  3. BZOJ4318: OSU! (概率DP)

    题意:一个串 给出每个字符为1的可能性 否则为0 一段连续的1能获得长度的立方的收益 问总收益的期望 题解:设x_i为到第i位时连续的1的期望长度 由i-1递推来的贡献 如果这一位是0没有贡献 如果是 ...

  4. BZOJ 4318 OSU! 期望DP

    题目大意:给定一个长度为 n n的01串,第ii个位置有 ai a_i的概率为 1 1,最终得分为01串中所有连在一起1的长度的立方和,求得分的期望 假如这个01串使确定的,考虑每新增一个位置,如果这 ...

  5. [洛谷 1365] WJMZBMR打osu! / Easy {期望DP}

    题目 https://www.luogu.org/problemnew/show/P1365 解题思路 这是我做的第三道期望DP.跟前两道的不同之处,在于它连续的一段具有不确定性且没有给出n的范围.所 ...

  6. WJMZBMR打osu! / Easy【期望dp】

    >Link luogu P1365 >Description 有一个长度为 n 的仅由ooo,xxx,???三个字符组成的字符串 设字符串的分数为:其中长度为 aaa 的只包含 ooo 的 ...

  7. 动态规划 —— 概率 DP 与期望 DP

    [概述] 由于概率和期望具有线性性质,使得可以在概率和期望之间建立一定的递推关系,这样就可以通过动态规划来解决一些概率问题,例如概率和期望的最值问题就常常使用概率 DP.期望 DP 来解决. 与其他的 ...

  8. luogu P4745 [CERC2017]Gambling Guide(期望DP + 最短路实现)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 P4745 [CERC2017]Gambling Guide(期望DP + 最短路实现) Weblin ...

  9. [SCOI2008]奖励关(期望dp)

    你正在玩你最喜欢的电子游戏,并且刚刚进入一个奖励关.在这个奖励关里,系统将依次随机抛出k次宝物,每次你都可以选择吃或者不吃(必须在抛出下一个宝物之前做出选择,且现在决定不吃的宝物以后也不能再吃). 宝 ...

最新文章

  1. 在Linux系统下编译并执行C++程序
  2. WPF:自动执行机器人程序若干注意事项
  3. 3、基于多播、安全认证的corosync集群(VIP、Httpd、Filesystem)
  4. java输出流输入流的使用_Java中的IO流之文件输入输出流
  5. linux命令strip
  6. 汶川地震一加一援助计划倡议书
  7. 如何释放hdfs中的续租_装修中甲醛如何高效释放
  8. Apache安装及jboss部署说明文档1
  9. Android加密算法之AES加密和解密实现
  10. (23)Linux下Clion中搭建opencv环境
  11. 基于MCS-51单片机的数字时钟设计
  12. houseprice_analysis_广州房子租售比分析(中)
  13. .rgb格式文件的Python读取、格式转换
  14. 如何使用光盘启动计算机,电脑如何设置光驱启动 电脑设置光驱启动方法【图文】...
  15. tar 压缩文件夹到指定的目录
  16. 如何将根证书预置到chromium浏览器中
  17. 苹果保修期查询_苹果手机维修为什么这么贵?
  18. PAT 甲级 1048 Find Coins
  19. html文本域 高度自适应,Javascript 文本域根据输入内容自适应高度
  20. PHP招聘:如何面试应届生求职者

热门文章

  1. python3安装步骤-超详细的小白python3.X安装教程|Python安装
  2. python基础教程是什么-python基础教程之python是什么?
  3. 用python画玫瑰花-用python画一朵玫瑰给你
  4. 基于ARM的非特定人语音识别系统设计
  5. 报错:Uncaught TypeError: 获取的元素节点.setAttribute is not a function
  6. element时间范围选择添加限制条件
  7. mac m1 nvm 安装node版本失败
  8. linux如何rpm更新内核,使用RPM包对RedHat进行内核升级
  9. 【狂神Mybatis笔记】配置解析
  10. 开源网络监控管理系统:OpenNMS