[Tkey] OSU!
更新的题解可看 此处
你说得对但是 恐怖日本病毒会自动向你的电脑中下载 OSU!
题意简述
一个 01 串,每个位置有 \(p_{i}\) 的概率为 \(1\),连续的 \(x\) 个 \(1\) 贡献 \(x^{3}\) 的分数,求总分数期望.
解法
我们考虑将前 \(i\) 位的期望拓展到前 \(i+1\) 位,假设我们已经求出了前 \(i\) 位的期望 \(E(i)\).
拓展的时候有 \(p_{i}\) 的概率为 \(1\),此时的值为 \(E_{3}(i+1)=(E(i)+1)^{3}=E_{3}(i)+3E_{2}(i)+3E(i)+1\) (因为分数是可以直接三次方的,因此我们这么转移),那么这种情况的期望为 \(p_{i}\times E_{3}(i+1)\)
这里的 \((E(i)+1)^{3}\) 的展开实际上用了种比较泛的写法,实际上,关于为什么它展开是 \(E_{3}(i)\) 而不是 \(E(i)^{3}\),是因为我们并不是给 \(E\) 做的三次方,而是给分数做的三次方. 假设我们已经有 \(x\) 个连续的 \(1\) 来贡献 \(x^{3}\) 分,那么再添加一个 \(1\) 时,分数就会变成 \((x+1)^{3}\),由此推导出一个有关贡献分数 \(x^{2},x^{1}\) 的式子.
也有另外 \(1-p_{i}\) 的概率为 \(0\),此时不会有任何变化,即这种情况的期望为 \((1-p_{i})\times E_{3}(i)\)
因此,转移总期望为
\]
可以发现这里还有个问题,就是我们没办法通过 \(E_{3}(i)\) 推出 \(E_{2}(i)\) 和 \(E(i)\) (注意,这里的 \(E_{3}\) 并不是单纯的三次方,而是表示连续的 \(x\) 个 \(1\) 贡献 \(x^{3}\) 的分数时的期望,\(E_{2}\) 同理,因此我们推不出来),又注意到我们只有在新加入一个 \(1\) 的时候用到了这样的数据,因此尝试维护一个 \(E(i)\) 表示前 \(i\) 位且第 \(i\) 位为 \(1\) ,并且连续的 \(x\) 个 \(1\) 贡献 \(x^{1}\) 的分数时的期望(因为为 \(0\) 的我们用不到,这样定义方便维护). 同样定义 \(E_{2}\).
可以仿效推出转移方程:(因为只剩一种情况了,好推)
\]
\]
带入求解即可.
代码
#include<bits/stdc++.h>
using namespace std;
long double a[100001],b[100001],f[100001],p[100001];
int main(){
int n;
cin>>n;
for(int i=1;i<=n;++i){
cin>>p[i];
a[i]=(a[i-1]+1)*p[i];
b[i]=(b[i-1]+2*a[i-1]+1)*p[i];
f[i]=f[i-1]*(1-p[i])+(f[i-1]+3*b[i-1]+3*a[i-1]+1)*p[i];
}
printf("%.1Lf",f[n]);
}
[Tkey] OSU!的更多相关文章
- .net源码分析 – Dictionary<TKey, TValue>
接上篇:.net源码分析 – List<T> Dictionary<TKey, TValue>源码地址:https://github.com/dotnet/corefx/blo ...
- .net源码分析 - ConcurrentDictionary<TKey, TValue>
List源码分析 Dictionary源码分析 ConcurrentDictionary源码分析 继上篇Dictionary源码分析,上篇讲过的在这里不会再重复 ConcurrentDictionar ...
- C# KeyValuePair<TKey,TValue>的用法-转载
C# KeyValuePair<TKey,TValue>的用法.结构体,定义可设置或检索的键/值对.也就是说我们可以通过 它记录一个键/值对这样的值.比如我们想定义一个ID(int类型)和 ...
- .NET中Dictionary<TKey, TValue>浅析
.NET中Dictionary<TKey, Tvalue>是非常常用的key-value的数据结构,也就是其实就是传说中的哈希表..NET中还有一个叫做Hashtable的类型,两个类型都 ...
- .net学习笔记----有序集合SortedList、SortedList<TKey,TValue>、SortedDictionary<TKey,TValue>
无论是常用的List<T>.Hashtable还是ListDictionary<TKey,TValue>,在保存值的时候都是无序的,而今天要介绍的集合类SortedList和S ...
- IDictionary<TKey, TValue> vs. IDictionary
Enumerating directly over an IDictionary<TKey,TValue>returns a sequence of KeyValuePair struc ...
- Dictionary<TKey, TValue> 类
C# Dictionary<TKey, TValue> 类 Dictionary<TKey, TValue> 泛型类提供了从一组键到一组值的映射.字典中的每个添加项都由一个值及 ...
- 线程安全集合 ConcurrentDictionary<TKey, TValue> 类
ConcurrentDictionary<TKey, TValue> 类 [表示可由多个线程同时访问的键/值对的线程安全集合.] 支持 .NET Framework 4.0 及以上. 示例 ...
- 2014 Asia AnShan Regional Contest --- HDU 5078 Osu!
Osu! Problem's Link: http://acm.hdu.edu.cn/showproblem.php?pid=5078 Mean: 略. analyse: 签到题,直接扫一遍就得答 ...
- UVALive 7270 Osu! Master (阅读理解题)
题目:传送门. 题意:阅读理解题,是一个osu的游戏,问得分.把题目翻译过来就是如果出现S或者BC后面跟的是1,ans就加1. #include <iostream> #include & ...
随机推荐
- 使用.NET6实现动态API
ApiLite是基于.NET6直接将Service层生成动态api路由,可以不用添加Controller,支持模块插件化,在项目开发中能够提高工作效率,降低代码量. 开发环境 .NET SDK 6.0 ...
- JavaScript小技巧~将伪数组转成数组的方法
伪数组:具有数组结构但是五数组相关方法的类数组结构: 方式1:Array.from() 方式2:Array.prototype.slice.call(); 用方式1吧,好记简单
- Python 基于pymongo操作Mongodb学习总结
实践环境 Python 3.6.4 pymongo 4.1.1 pymongo-3.12.3-cp36-cp36m-win_amd64.whl 下载地址:https://pypi.org/simple ...
- 记一次NACOS开放公网访问导致服务器被挖矿的解决流程 [kdcflush] acosd
前言 事情的起因是这样的,昨天领导找到我说服务器内存满了,影响其他程序正常运行了,让我把测试服务器上之前启动的六个JAVA程序停一下,接着我就登上服务器执行docker compose down把服务 ...
- java一些位运算的方法
记录一些java位运算的方法 Integer.bitCount:用于记录一个int输转化成二进制之后里面包含了多少个1. 使用例题为leetcode2859 切记下面规则要先转二进制 &相同位 ...
- Telegram手机号码反查工具
Telegram手机号码反查工具 项目地址:https://github.com/bellingcat/telegram-phone-number-checker v1.2.1版本 要求python的 ...
- 百度翻译network里没有sug(文章发布时间2022年10月)
百度翻译已经更新,现在的百度翻译分为两个阶段翻译,第一个阶段识别你的翻译字符是什么类型语言 第二阶段生成随机sign加携带token以post表单方式上传数据,返回json数据 尚硅谷在B站发布的的爬 ...
- 【IDEA】转大小写快速操作
需求场景: 快速修改一些字符全部变成大写,或者小写 例如修改SQL语句,部分字段大写,部分字段小写,需要统一 快捷键: [Ctrl + Shift + U] 演示案例: SELECT ( (SELEC ...
- 【Layui】10 颜色选择器 ColorPicker
文档地址: https://www.layui.com/demo/colorpicker.html 常规选择器: <fieldset class="layui-elem-field l ...
- 深度神经网络:深度神经网络部署工程师——必备工具分享:onnx_simplifier、OnnxSlim
onnx_simplifier 地址: https://github.com/daquexian/onnx-simplifier OnnxSlim 地址: https://github.com/WeL ...