当前位置: 首页 > news >正文

NKOJ全TJ计划——NP4582

题目内容

osu 是一款群众喜闻乐见的休闲软件。
我们可以把osu的规则简化与改编成以下的样子:
一共有 \(n(n\le100000)\) 次操作,每次操作只有成功与失败之分,成功对应1 ,失败对应0, \(n\) 次操作对应为1个长度为 \(n\) 的01串。在这个串中连续的 \(X\)个1可以贡献\(X^3\) 的分数,这\(X\)个1不能被其他连续的1所包含(也就是极长的一串1,具体见样例解释)
现在给出\(n\),以及每个操作的成功率,请你输出期望分数,输出四舍五入后保留\(1\)位小数。

解决方案

我们假设\(f_{0,i}\)为以\(i\)结尾的连续1的长度的期望,显然,其递推公式为\(f_{0,i}=(f_{0,i-1}+1)a_i\)
\(f_{1,i}为\)\(i\)结尾的连续1长度的平方的期望,显然,其递推公式为\(f_{1,i}=(f_{1,i-1}+2\times f_{0,i-1}+1)a_i\)
这里可能有同学问了:为什么不能是\(f_{1,i}=f_{0,i}^2\)呢?
这是因为\(f_{1,i}\)是"长度的平方的期望"而不是"长度的期望的平方",不能直接通过\(f{2,i}\)求。
\(f_{2,i}\)就是我们的答案,递推式是\(f_{2,i}=f_{2,i-1}+(3\times f_{1,i-1}+3\times f_{0,i-1}+1)a_i\)
至于为什么这次\(f_{2,i-1}\)在括号外面,是因为\(f_{2,i}\)\(1-a_i\)的概率是\(f_{2,i-1}\),而\(a_i\)的概率是\(f_{2,i-1}+3\times f_{1,i-1}+3\times f_{0,i-1}+1\)
整理后得\(f_{2,i-1}\times(1-a_i+a_i)+a_i\times(f_{2,i-1}+3\times f_{1,i-1}+3\times f_{0,i-1}+1)\)
然后就没有然后了

代码

#include<bits/stdc++.h>
using namespace std;
#define N 100000
int n,m,i,j,ans,k;
double f[3][N+13],a[N+13];
int main()
{cin>>n;for(i=1;i<=n;i++){scanf("%lf",&a[i]);f[0][i]=(f[0][i-1]+1.0)*a[i];f[1][i]=(f[1][i-1]+2.0*f[0][i-1]+1.0)*a[i];f[2][i]=f[2][i-1]+(3.0*f[1][i-1]+3.0*f[0][i-1]+1.0)*a[i];}printf("%.1f\n",f[2][n]);
}
http://www.wxhsa.cn/company.asp?id=1078

相关文章:

  • VibeCoding On Function AI Deep Dive:用 AI 应用生产 AI 应用
  • [题解] P13777 「o.OI R2」Meowalkane
  • Kubernetes Pod控制器
  • kingbase金仓数据库的用户权限管理
  • C++14之exchange
  • Blazor之第三方登录
  • 深入解析:物联网时序数据库IoTDB是什么?
  • wpf 后台获取资源字典对象
  • POJ 3601 Subsequence
  • 【IEEE出版】第十届计算机技术与机械电气工程国际学术论坛(ISCME 2025)
  • Python-httpx库的post请求的几种参数的区别
  • 精准把控人力,PJMan “负荷分析” 助力项目高效推进
  • 92. 递归实现指数型枚举
  • Logstash、Filebeat和Fluent比较
  • 车载电动充气泵芯片方案设计
  • [题解]P4281 [AHOI2008] 紧急集合 / 聚会
  • 【API接口】最新可用红果短剧接口
  • 微信个人号接口
  • 数据结构与算法-28.图
  • 剪映如何将草稿分享给别人?
  • 测试开发私教服务班4.0:大厂导师1对1带你突破职业瓶颈!
  • 深入理解Java对象:从创建到内存访问的JVM底层机制
  • 【AP出版】第八届人文教育与社会科学国际学术会议(ICHESS 2025)
  • 从零开始搭建Qwen智能体:新手也能轻松上手指南
  • # 简单贪心题(greedy)
  • 免安装在线录屏神器推荐:纯前端屏幕录制工具使用指南
  • sqlalchemy连接池的长连接一直占用,无法释放导致服务卡住
  • 锁相关记录
  • 加入任务计划
  • 使用yolo算法对视频进行实时目标跟踪和分割