首页 > 其他分享 >5.12校赛记录

5.12校赛记录

时间:2023-05-12 19:55:55浏览次数:41  
标签:lfloor le 记录 sum rfloor 5.12 校赛 binom

题意

给定 \(n\) 个取值为实数的变量 \(x_1,x_2,\dots,x_n\),其中 \(x_i\) 在 \([l_i,r_i)\) 之间均匀随机。求 \(\lfloor x_1+x_2+\dots+x_n\rfloor^k\) 的期望取值。对 \(998244353\) 取模。

\(1\le n\le10^3,1\le k\le20,0\le l_i<r_i<998244353\)。

题解

实数十分麻烦。这题如果不进行转化,暴力都写不出来。

将每个 \(x_i\) 拆成 \(a_i+r_i\),其中 \(a_i\in\Z,r_i\in[0,1)\)。则答案为

\[E(\sum a_i+\lfloor\sum r_i\rfloor)^k\\ =E(\sum_{j=0}^k\binom{k}{j}(\sum a_i)^j\lfloor\sum r_i\rfloor^k)\\ =\sum_{j=0}^k\binom{k}{j}E(\sum a_i)^jE\lfloor\sum r_i\rfloor^{k-j} \]

于是可以隔离考虑。先看前面部分。期望已经可以拿掉了,变成求所有 \((\sum a_i)^j\) 之和。

设 \(f_{i,k}\) 表示当前处理到 \(a_i\),幂次为 \(k\) 的答案。设当前选 \(v\),二项式展开易得

\[\begin{aligned} f_{i,k}&=\sum_{v=l_i}^{r_i-1}\sum_{j=0}^k\binom{k}{j}f_{i-1,j}v^{k-j}\\ &=\sum_{j=0}^k\binom{k}{j}f_{i-1,j}\sum_{v=l_i}^{r_i-1}v^{k-j} \end{aligned} \]

后面那个是拉格朗日插值的经典问题。于是预处理后可以 \(O(nk^2)\) 解决。

再看后面部分。所有 \(r\) 均为 \([0,1)\) 的均匀随机变量,这是很好的性质。设 \(s_i=\sum\limits_{j=1}^ir_j\),\(t_i=s_i-\lfloor s_i\rfloor\)。因为随机,所以 \(t_i\) 均不相等。将其看成一个排列,则我们发现所有 \(n!\) 种排列方式的概率相等,而且 \(\lfloor\sum r_i\rfloor=\sum\limits_{i=1}^{n-1}[t_i>t_{i+1}]\)。于是脱离了小数。同样通过求所有 \(\lfloor\sum r_i\rfloor^k\) 之和消去期望。

排列相关 \(\text{dp}\) 的重要思考方向之一是插数。从小到大插数,设 \(g_{i,j}\) 表示当前处理到 \(i\),有 \(j\) 个位置满足上式的方案数。易得 \(g_{i,j}=g_{i-1,j-1}+g_{i-1,j}+j\cdot g_{i-1,j}+(i-j-1)g_{i-1,j-1}\),分别表示插在开头,结尾,满足上式的两数之间,不满足之间。复杂度 \(O(n^2)\)。于是此题得解。

此题处理小数的方式十分精妙,值得学习。

标签:lfloor,le,记录,sum,rfloor,5.12,校赛,binom
From: https://www.cnblogs.com/fish07/p/17396164.html

相关文章

  • 5.12绩效第三名说明
    我们团队三个人分工明确,效率显著,在团队中都发挥着不可或缺的作用。例如本人主要负责音频格式转换板块儿方面的功能实现以及绘制web页面,进行代码结构规范性处理,还有在展示项目阶段作为代表发言,和接下来的摆摊主要发言人等工作。作为本团队唯一使用idea编程的队员,了解servlet三层......
  • 5.12总结
    packagecom.mf.jdbc;importcom.mysql.jdbc.Driver;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.Statement;/**JDBC的快速入门*/publicclassJDBCDemo{publicstaticvoidmain(String[]args)throwsException{//1.注册驱动Cla......
  • 每日记录
    Web数据库程序设计 一、实验目的通过使用JSP技术设计一个简单的数据库管理系统,了解展示页面和编辑页面的区别,掌握Web服务器与MySQL数据库的连接和数据库操作的方法,掌握使用Java语言编写JSP文件的方法。二、实验内容和基本要求从以下列举的四个数据库中,任选其一,或者自行定义......
  • 五月颓废记录
    [集训队互测2018]完美的队列2log的做法很神秘,很精妙。放在线段树上做,每条加入的线段都看做log条线段。对于线段树上的每条线段,都要开一棵子线段树。总之要维护出每次加入一段线段后,哪些位置的线段被完全pop掉,不断pop就行了。看了一些AGC却发现一个都不会!!!CF......
  • 【敲敲云】免费的零代码产品,流程节点 — 获取多条记录实战
    获取多条记录:此节点用于获取工作表中多条数据或多个数组,可以对获取到的多条数据批量编辑,或将获取到的多条数据批量新增到其他工作表中,也支持传递给子流程。获取多条记录节点类型:1.从工作表获取多条2.从单条记录获取关联记录3.从新增节点获取记录1.从工作表获取多条......
  • 记录--9个封装Vue组件的小技巧
    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助组件是前端框架的基本构建块。把它们设计得更好会使我们的应用程序更容易改变和理解。在这节课中,分享一下在过去几年中工作中学到的9个技巧。1.你可能不需要创建一个组件在创建一个组件之前,看看它是为了可重用......
  • [学习笔记+做题记录] 数位 DP
    一、数位DP你说的对,但是数位DP是用于解决一种数位统计类似的问题,往往数据范围很大,比如\(10^9,10^{12},10^{18}\)甚至更大,这种DP一般需要记录当前考虑到第几位,是否贴上界/下界,以及一些题目里的东西,需要具体题目具体分析。二、HDU3652-B-numberhttps://acm.hdu.ed......
  • 记录开发第一个Servlet时部署tomcat出现HTTP状态 500 - 内部服务器错误问题 (已解决)
    经历了漫长的deBug过程,我搜索到的文章的报错原因都不相同,希望本片文章能够帮到你,创作不易,点个赞再走吧! 我的报错: 后来发现自己编译后只产生了class文件,没有产生包,于是在dos窗口改变了编译方式: 1javac-d.*.java 这个方法使得 打包编译时自动创建包目录,不需要自己新......
  • 记录一个一汽解放卡车多功能方向盘解码做模拟欧卡外设的数据分析过程
    模拟赛车的最终归宿就是欧卡讲究的就是一个仿真,贴近真实才有感觉 2线led背光灯4线两组13键1组OK9201组1354 1组1867  1组下2615 1组3719 2组400 2组6522组1006 2组1336 2组17172248  2组2803 2组3723 解码程序STM32CUBEIDE......
  • c#中线程安全-记录
    在C#中,值类型的数据不会产生线程不安全。这是因为值类型的数据在内存中是按值存储的,每个线程都有自己的栈空间,因此不会出现多个线程同时访问同一个内存地址的情况。而引用类型的数据则是按引用存储的,多个线程可能会同时访问同一个内存地址,从而导致线程不安全的问题。为了避免这种......