LOJ2267 SDOI2017 龙与地下城 FFT、概率密度函数、Simpson
概率论神仙题……
首先一个暴力做法是设\(f_{i,j}\)表示前\(i\)个骰子摇出点数和为\(j\)的概率,不难发现DP的过程是一个多项式快速幂,FFT优化可以做到\(O(XYlog(XY))\)
但是能够跑过\(4 \times 10^6\)的FFT应该很少见,所以我们对于\(Y\)比较大的部分需要另外考虑做法。
首先一个前置是概率密度函数:对于一个连续型随机变量\(p\),\(f(x)\)是\(p\)的概率密度函数当且仅当对于\(\forall l<r\),\(\int_l^r f(x)\)等于\(p\)随机到区间\([l,r]\)内的概率
还有一个前置是正态分布:对于一个连续型随机变量\(p\),如果它服从正态分布,且已知\(p\)的期望为\(\mu\),方差为\(\sigma^2\),那么\(p\)的概率密度函数为\(\frac{1}{\sqrt{2 \pi \sigma^2}}e^\frac{-(x - \mu)^2}{2}\)。下文中我们称变量\(p\)服从期望为\(\mu\)、方差为\(\sigma^2\)的正态分布为变量\(p\)服从\(N[\mu , \sigma^2]\)。
那么如果我们知道某一个变量服从正态分布,就可以直接得知它的概率密度函数,然后需要求落在一段区间内的概率就只需要Simpson积分一下就可以了。
但是似乎我们没法判断一个变量是否服从正态分布,所以还有一个最重要的定理:中心极限定理。定理本身比较复杂,我们只需要用到这个定理的一个小的推论,如下:
对于同分布、值独立的若干个变量\(x_1,x_2,...,x_n\),设其中任一变量取到的值的期望为\(\mu\),方差为\(\sigma^2\),那么当\(n\)足够大时,设\(P = \frac{\sum\limits_{i=1}^n x_i - n\mu}{\sqrt{n\sigma^2}}\),那么变量\(P\)服从\(N[0,1]\)。
也就是说当题目给出的\(Y\)足够大的时候,我们可以直接套用中心极限定理。当\(\sum\limits_{i=1}^n x_i \in [A,B]\),\(P \in [\frac{A - n\mu}{\sqrt{n\sigma^2}} , \frac{B - n\mu}{\sqrt{n\sigma^2}}]\),而一个随机变量的期望和方差已经在题目中给出了,我们可以直接把变量取值范围求出来然后对着概率密度函数Simpson积分就可以了。
所以我才不会说我写这道题纯属为了练Simpson积分
LOJ2267 SDOI2017 龙与地下城 FFT、概率密度函数、Simpson的更多相关文章
- BZOJ.4909.[SDOI2017]龙与地下城(正态分布 中心极限定理 FFT Simpson积分)
BZOJ 洛谷 https://www.luogu.org/blog/ShadowassIIXVIIIIV/solution-p3779# 正态分布 正态分布是随机变量\(X\)的一种概率分布形式.它 ...
- 洛谷P3779 [SDOI2017]龙与地下城(概率论+Simpson+FFT)
题面 传送门 题解 orz shadowice 正态分布 正态分布是随机变量\(X\)的一种概率分布形式.它用一个期望\(\mu\)和方差\(\sigma^2\)就可以描述,记为\(N(\mu,\si ...
- bzoj 4909 [Sdoi2017]龙与地下城
题面 https://www.lydsy.com/JudgeOnline/problem.php?id=4909 题解 目前为止仅仅在LOJ上A掉这道题(Loj真快!) 当然不是标准做法 显然我们只要 ...
- rvs产生服从指定分布的随机数 pdf概率密度函数 cdf累计分布函数 ppf 分位点函数
统计工作中几个常用用法在python统计函数库scipy.stats的使用范例. 正态分布以正态分布的常见需求为例了解scipy.stats的基本使用方法. 1.生成服从指定分布的随机数 norm.r ...
- 高斯分布(Gaussian Distribution)的概率密度函数(probability density function)
高斯分布(Gaussian Distribution)的概率密度函数(probability density function) 对应于numpy中: numpy.random.normal(loc= ...
- 函数的光滑化或正则化 卷积 应用 两个统计独立变量X与Y的和的概率密度函数是X与Y的概率密度函数的卷积
http://graphics.stanford.edu/courses/cs178/applets/convolution.html Convolution is an operation on t ...
- Kattis - heapsoffun Heaps of Fun (概率密度函数+dp)
题意:有一棵含有n个结点(n<=300)的根树,树上每个结点上的权值是从[0,ai](ai<=1e9)区间内随机的一个实数,问这棵树能形成一个最小堆的概率. 由于结点取值范围是1e9而且是 ...
- 使用Excel绘制F分布概率密度函数图表
使用Excel绘制F分布概率密度函数图表 利用Excel绘制t分布的概率密度函数的相同方式,可以绘制F分布的概率密度函数图表. F分布的概率密度函数如下图所示: 其中:μ为分子自由度,ν为分母自由度 ...
- PDF的来源——概率密度函数
//首发于简书,详见原文:https://www.jianshu.com/p/6493edd20d61 你不会还真的以为这是一篇讲怎么做pdf文件,怎么编辑.保存.美化的文章吧? 咳咳,很遗憾告诉你不 ...
随机推荐
- 计蒜客 39280.Travel-二分+最短路dijkstra-二分过程中保存结果,因为二分完最后的不一定是结果 (The 2019 ACM-ICPC China Shannxi Provincial Programming Contest M.) 2019ICPC西安邀请赛现场赛重现赛
Travel There are nn planets in the MOT galaxy, and each planet has a unique number from 1 \sim n1∼n. ...
- Kafka(四) —— KafkaProducer源码阅读
一.doSend()方法 Kafka中的每一条消息都对应一个ProducerRecord对象. public class ProducerRecord<K, V> { private fi ...
- 利用select/poll监听多个设备详解
如果一个应用程序去处理多个设备,例如应用程序读取网路数据,按键,串口,一般能想到的有三种方法: 方法1:串行+阻塞的方式读取:while(1) { read(标准输入);read(网络);}缺点:每当 ...
- Android 属性property_get/property_set
每个属性都有一个名称和值,他们都是字符串格式.属性被大量使用在Android系统中,用来记录系统设置或进程之间的信息交换.属性是在整个系统中全局可见的.每个进程可以get/set属性. 在系统初始化时 ...
- Microsoft SQL Server 2008 R2 安装遇到的问题
SQL Server 安装过很多次了,第一次遇见这样的问题: TITLE: Microsoft SQL Server 2008 R2 安装程序----------------------------- ...
- Java与.net 关于URL Encode 的区别
在c#中,HttpUtility.UrlEncode("www+mzwu+com")编码结果为www%2bmzwu%2bcom,在和Java开发的平台做对接的时候,对方用用url编 ...
- (九)Knockout 进一步技术
加载和保存 JSON 数据 Knockout允许您实现复杂的客户端交互,但是几乎所有web应用程序还需要与服务器交换数据,或者至少要序列化数据以供本地存储.交换或存储数据最方便的方式是JSON格式-- ...
- uni-app打包程序 Hbuilder X 用自有证书 苹果证书打包 ios App、用DCloud公用证书打包Android APP
Android用HBuilder的DCloud公用证书即可 HBuilderX uni-app打包成apk安装到手机首先要登录,没有帐号可以注册,接着点击运行—原生App-云打包,配置完后点击打包, ...
- 如何自己构建一套EasyNVR这样的无插件流媒体服务器实现摄像机硬盘录像机的网页可视化直播
EasyNVR流媒体解决方案 EasyNVR能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络摄像机IP Camera.NVR等具有RTSP协议输出的设备接入到EasyNVR,EasyNV ...
- 创建slackapp prometheus告警发到slack
创建slackapp: https://blog.walterlv.com/post/slack-api-starter-incoming-webhooks.html#%E5%88%9B%E5%BB% ...