P1365 WJMZBMR打osu! / Easy-洛谷luogu
题目背景
原 维护队列 参见P1903
题目描述
某一天WJMZBMR在打osu~~~但是他太弱逼了,有些地方完全靠运气:(
我们来简化一下这个游戏的规则
有nn次点击要做,成功了就是o
,失败了就是x
,分数是按combo计算的,连续aa个combo就有a\times aa×a分,combo就是极大的连续o
。
比如ooxxxxooooxx
x,分数就是2 \times 2 + 4 \times 4 = 4 +16=202×2+4×4=4+16=20。
Sevenkplus闲的慌就看他打了一盘,有些地方跟运气无关要么是o
要么是x
,有些地方o
或者x
各有50%的可能性,用?
号来表示。
比如oo?xx
就是一个可能的输入。 那么WJMZBMR这场osu的期望得分是多少呢?
比如oo?xx
的话,?
是o
的话就是oooxx
=> 9,是x的话就是ooxxx
=> 4
期望自然就是(4+9)/2 =6.5(4+9)/2=6.5了
输入输出格式
输入格式:
第一行一个整数nn,表示点击的个数
接下来一个字符串,每个字符都是o
,x
,?
中的一个
输出格式:
一行一个浮点数表示答案
四舍五入到小数点后44位
如果害怕精度跪建议用long double或者extended
输入输出样例
说明
osu很好玩的哦
WJMZBMR技术还行(雾),x基本上很少呢
--------------------------------------------------------------
很基础的期望的题
只要熟练掌握了dp
就没问题了
然而
唉.......
----------------------------------------------------------------
-------------------------------------------------------------------------
- #include<cstdio>
- #include<iostream>
- using namespace std;
- double f[],g[];
- int main()
- {
- int n;
- char s[],ch;
- scanf("%d",&n);
- cin>>s;
- for(int i=;i<n;++i)
- {
- ch = s[i];
- if(ch == 'x')
- {
- f[i] = f[i - ];
- g[i] = ;
- }
- else
- if(ch == 'o')
- {
- f[i] = f[i - ] + * g[i - ] + ;
- g[i] = g[i - ] + ;
- }
- else
- {
- f[i] = f[i - ] + g[i - ] + 0.5;
- g[i] = g[i - ]/ + 0.5;
- }
- }
- printf("%.4lf\n",f[n-]);
- return ;
- }
本来
我写的scanf
于是毫无疑问的wa了
我还一脸懵
后来才发现
循环出现了很大的问题
然而
在我发现循环有问题之前
我曾一度坚定不移的怀疑是不是自己的滚动数组写错了
唉,太傻了太傻了
循环输入字符串中的单个字符不能用scanf!!!!!
用cin
在循环一个个字符!!!!!!!
P1365 WJMZBMR打osu! / Easy-洛谷luogu的更多相关文章
- 洛谷 P1365 WJMZBMR打osu! / Easy
题目背景 原 维护队列 参见P1903 题目描述 某一天\(WJMZBMR\)在打\(osu~~~\)但是他太弱逼了,有些地方完全靠运气:( 我们来简化一下这个游戏的规则 有\(n\)次点击要做,成功 ...
- 洛谷P1365 WJMZBMR打osu! / Easy——期望DP
题目:https://www.luogu.org/problemnew/show/P1365 平方和怎样递推? 其实就是 (x+1)^2 = x^2 + 2*x + 1: 所以我们要关注这里的 x — ...
- luogu P1365 WJMZBMR打osu! / Easy(期望DP)
题目背景 原 维护队列 参见P1903 题目描述 某一天WJMZBMR在打osu~~~但是他太弱逼了,有些地方完全靠运气:( 我们来简化一下这个游戏的规则 有nnn次点击要做,成功了就是o,失败了就是 ...
- Luogu P1365 WJMZBMR打osu! / Easy
概率期望专题首杀-- 毒瘤dp 首先根据数据范围推断出复杂度在O(n)左右 但不管怎么想都是n^2-- 晚上躺在床上吃东西的时候(误)想到之前有几道dp题是通过前缀和优化的 而期望的可加性又似乎为此创 ...
- P1365 WJMZBMR打osu! / Easy
题目背景 原 维护队列 参见P1903 题目描述 某一天WJMZBMR在打osu~~~但是他太弱逼了,有些地方完全靠运气:( 我们来简化一下这个游戏的规则 有 nnn 次点击要做,成功了就是o,失败了 ...
- WJMZBMR打osu! / Easy
WJMZBMR打osu! / Easy 有一个由o,x,?组成的长度为n的序列,?等概率变为o,x,定义序列权值为连续o的长度o的平方之和,询问权值的期望, 解 注意到权值不是简单的累加关系,存在平方 ...
- P1654 OSU!-洛谷luogu
传送门 题目背景 原 <产品排序> 参见P2577 题目描述 osu 是一款群众喜闻乐见的休闲软件. 我们可以把osu的规则简化与改编成以下的样子: 一共有n次操作,每次操作只有成功与失败 ...
- 洛谷 1365 WJMZBMR打osu! / Easy
题目:https://www.luogu.org/problemnew/show/P1365 大水题.记录一下o的期望长度. 关键是(x+1)^2=x^2+2*x+1. #include<ios ...
- [Luogu1365] WJMZBMR打osu! / Easy
Description 某一天WJMZBMR在打osu~~~但是他太弱逼了,有些地方完全靠运气:( 我们来简化一下这个游戏的规则 有 \(n\) 次点击要做,成功了就是o,失败了就是x,分数是按com ...
随机推荐
- es6 语法 (iterator和for...of循环)
Iterator遍历器 遍历器(Iterator)就是这样一种机制.它是一种接口,为各种不同的数据结构提供统一的访问机制.任何数据结构只要部署Iterator接口,就可以完成遍历操作(即依次处理该数据 ...
- [转]JS学习总结-技巧、方法、细节
变量转换 var myVar = "3.14159", str = ""+ myVar,// string类型 int = ~~myVar, // number ...
- tsung HTTP协议统计报告分析
tsung HTTP协议统计报告分析 by:授客 QQ:1033553122 1. Main Static l higest 10sec mean: 基于每10s的统计,最大耗时 l lowe ...
- 【爬虫】在Xpath中使用正则
ns = {"re": "http://exslt.org/regular-expressions"} print(html.xpath("//*[r ...
- Flutter 布局详解
本文主要介绍了Flutter布局相关的内容,对相关知识点进行了梳理,并从实际例子触发,进一步讲解该如何去进行布局. 1. 简介 在介绍Flutter布局之前,我们得先了解Flutter中的一些布局相关 ...
- VMware安装Centos7后有线线缆被拔出
背景:在win10 系统中的虚机软件VMware Workstation中安装CentOS7桌面版,安装过程中没有设置网络 1.确认你win10系统打开了这两个服务:VMware DHCP Servi ...
- ASYNC_NETWORK_IO和PREEMPTIVE_OS_WAITFORSINGLEOBJECT等待事件
背景环境: SQL Server 2005或以上 Select * from 某个表,表的数据量约为30万行,在执行语句时通过观察sys.dm_exec_requests中的wait_type列发现是 ...
- 两层c:forEach循环嵌套
jsp中两级菜单如何用c:forEach输出 items 要被循环的信息 否 无 begin 开始的元素(0=第一个元素,1=第二个元素) 否 0 end 最后一个元素(0=第一个元素,1=第二个元素 ...
- Linux 忘记登录密码?破解系统登陆密码
1.重启或者开启系统,在如下界面按e 进入救援系统: 2.在linux16 这一行末尾输入:rd.break,以rd.break 的方法重置密码 3.分别执行以下命令 mount -o remount ...
- PHP实现类似题库抽题效果
PHP实现类似题库抽题效果 大家好,我顾某人又回来了,最近学了一点PHP,然后就想写个简单小例子试试,于是就写了一个类似于从题库抽题的东西,大概就是先输入需要抽题的数量,然后从数据库中随机抽取题目. ...