【题解】 bzoj3450 JoyOI1952 Easy (期望dp)
Solution
- 期望的题目真心不太会
- 定义状态\(f[i]\)表示到第\(i\)期望长度,\(dp[i]\)表示期望分数
- 如果上一步的持续\(o\)长度为\(L\),那么贡献是\(L^2\),现在长度为\(L+1\),贡献是\(L^2+2*L+1\),那么添加量就是\(2*L+1\)
- 所以我们可以得到转移方程:
\(ch[i]==o\) 时,\(f[i]=f[i-1]+1 ~~~~~~~~~~~ dp[i]=dp[i-1]+f[i-1]*2+1\)
\(ch[i]==x\) 时,\(f[i]=0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ dp[i]=dp[i-1]\)
\(ch[i]==?\) 时,\(f[i]=(f[i-1]+1)/2 ~~~~~dp[i]=dp[i-1]+(f[i-1]*2+1)/2\)
Code
//it is coded by ning_mew on 7.22
#include<bits/stdc++.h>
using namespace std;
const int maxn=3e5+7;
double ans=0,dp[maxn],f[maxn];
int n;
char ch[maxn];
int main(){
scanf("%d",&n); scanf("%s",ch);
for(int i=1;i<=n;i++){
if(ch[i-1]=='x'){f[i]=0;dp[i]=dp[i-1];continue;}
if(ch[i-1]=='o'){f[i]=f[i-1]+1;dp[i]=dp[i-1]+f[i-1]*2+1;continue;}
if(ch[i-1]=='?'){f[i]=0.5*f[i-1]+0.5;dp[i]=dp[i-1]+(f[i-1]*2+1)/2;continue;}
}printf("%0.4f\n",dp[n]);return 0;
}
博主蒟蒻,随意转载。但必须附上原文链接:http://www.cnblogs.com/Ning-Mew/,否则你会场场比赛暴0!!!
【题解】 bzoj3450 JoyOI1952 Easy (期望dp)的更多相关文章
- 【BZOJ3450】Easy [期望DP]
Easy Time Limit: 10 Sec Memory Limit: 128 MB[Submit][Status][Discuss] Description 某一天WJMZBMR在打osu~~ ...
- 【NOI2005】聪聪与可可 题解(最短路+期望DP)
前言:学长讲的太神了:自己还能推出来DP式子,挺开心. -------------------------- 题目链接 题目大意:给定一张含有$n$个结点$m$条边的无向连通图.现在聪聪在点$s$,可 ...
- 【BZOJ3450】Tyvj1952 Easy 期望DP
[BZOJ3450]Tyvj1952 Easy Description 某一天WJMZBMR在打osu~~~但是他太弱逼了,有些地方完全靠运气:(我们来简化一下这个游戏的规则有n次点击要做,成功了就是 ...
- [BZOJ4318] WJMZBMR打osu! / Easy (期望DP)
题目链接 Solution Wa,我是真的被期望折服了,感觉这道题拿来练手正好. DP的难度可做又巧妙... 我们定义: \(f[i]\) 代表到第 \(i\) 次点击的时候的最大答案. \(g[i] ...
- BZOJ.3450.(JoyOI1952) Easy(期望)
题目链接 /* 设f[i]为到i的期望得分,c[i]为到i的期望连续长度 则若s[i]=='x',f[i]=f[i-1], c[i]=0 s[i]=='0',f[i]=f[i-1]+2*c[i-1]+ ...
- BZOJ 3450 Tyvj1952 Easy ——期望DP
维护$x$和$x^2$的期望递推即可 #include <map> #include <ctime> #include <cmath> #include <q ...
- 洛谷P1365 WJMZBMR打osu! / Easy——期望DP
题目:https://www.luogu.org/problemnew/show/P1365 平方和怎样递推? 其实就是 (x+1)^2 = x^2 + 2*x + 1: 所以我们要关注这里的 x — ...
- [bzoj3450]Tyvj1952 Easy[概率dp]
和之前一样考虑这个音符时x还是o,如果是x,是否是新的连续一段,对答案的贡献是多少$(a^2-{(a-1)}^2)$,然后递推就可以了. #include <bits/stdc++.h> ...
- 洛谷 P3239 [HNOI2015]亚瑟王(期望dp)
题面 luogu 题解 一道复杂的期望\(dp\) 思路来源:__stdcall 容易想到,只要把每张牌打出的概率算出来就可以求出\(ans\) 设\(fp[i]\)表示把第\(i\)张牌打出来的概率 ...
随机推荐
- Linux下安装jdk+maven +git
Linux系统下的操作,一直不是很熟悉.作为一名java开发工程师,感到很惭愧.因此把自己的阿里云服务器安装环境相关的东西给记录下来,方便后续查阅. 本文所采用的Lin ...
- LiveCharts文档-3开始-6轴Axes
原文:LiveCharts文档-3开始-6轴Axes LiveCharts文档-3开始-6轴Axes 通常来说,你可以自定义LiveChart里的任何东西,Axes也不例外.下面这幅图展示了Axes. ...
- 如何使用 GroupBy 计数-Count()
十年河东,十年河西,莫欺少年穷. 本节探讨的内容很简单,就是如果使用GroupBy计数 提供两种方法:第一:把查询的数据,转化为泛型,然后泛型分组计数. 第二:Linq语句直接分组计数 有如下范例: ...
- java.lang.IllegalStateException: Failed to load property source from location 'classpath:/application-dev.yml'
如果你的项目没有配置错误,配置文件名称也正常,还出现这个问题,那一定是你的yml文件编码的问题 先附上一张项目架构图 当我启动服务器寻找配置文件的时候,服务器提示这样的错误信息 java.lang.I ...
- MySQL调优基础, 与hikari数据库连接池配合
1.根据硬件配置系统参数 wait_timeout 非交互连接的最大存活时间, 10-30min max_connections 全局最大连接数 默认100 根据情况调整 back_log ...
- Mybatis中 collection 和 association 的区别?
public class A{ private B b1; private List<B> b2;} 在映射b1属性时用association标签,(一对一的关系) 映射b2时用colle ...
- PAT甲级题解-1066. Root of AVL Tree (25)-AVL树模板题
博主欢迎转载,但请给出本文链接,我尊重你,你尊重我,谢谢~http://www.cnblogs.com/chenxiwenruo/p/6803291.html特别不喜欢那些随便转载别人的原创文章又不给 ...
- 语音笔记:CTC
CTC全称,Connectionist temporal classification,可以理解为基于神经网络的时序类分类.语音识别中声学模型的训练属于监督学习,需要知道每一帧对应的label才能进行 ...
- Daily Scrum 12.8
Member Task on 12.08 Task on 12.09 仇栋民 参与M2阶段第二次决策会议 开始Task964 : 活动评论功能雏形 康家华 开始Task982 : 完成活动界面的设计稿 ...
- 素数问题练习_HDOJ1262
HDOJ1262_寻找素数对 和上一篇博客一样的解法,将10000以内的所有素数求出即可解题. #include<stdio.h> #include<stdlib.h> #in ...