最值反演 min-max容斥
说实话这些博客早晚都要整理后上m***999。
最值反演是针对一个集合中最大/最小值的反演。
\[
\max\{S\}=\sum_{T\subset S}(-1)^{|T|+1}\min\{T\}
\]
\[
\min\{S\}=\sum_{T\subset S}(-1)^{|T|+1}\max\{T\}
\]
如{1,2,3,4}的最大值=1+2+3+4-1-1-1-2-2-3+1+1+1+2-1=4。
求LCM
将每个数\(a_i\)分解为\(\prod_{p_j=prime[i][]} p_j^{k_j}\)。则LCM就是求每个质因数中指数的最大值之积,而GCD是每个质因数中的指数的最小值之积。因此由最值反演可得
\[
\rm{lcm}\{S\}=\prod_{T\subset S}(\gcd\{T\})^{(-1)^{|T|+1}}
\]
求期望
对原式套一个期望,就有该式子的期望形式:
\[
\mathbb{E}[\max\{S\}]=\sum_{T\subset S}(-1)^{|T|+1}\mathbb{E}[\min\{T\}]
\]
例题
给定集合\(S\)中每个元素出现的概率\(p_i\),其和为\(1\),每次会按概率出现一个元素。求每个元素都至少出现一次的期望次数。
可用状压DP解决,复杂度\(O(2^n\cdot n)\)。
考虑定义集合\(T\)中元素的比较运算为最早出现时间更早。则\(\mathbb{E}[\min\{T\}]\)的意义为\(T\)中出现任意一个元素的期望次数。因为每次只能出现一个数,出现任意一个数的概率显然就是集合中所有概率的和。因此这个期望等于\(\frac{1}{\sum_{i\in T}p_i}\)。最后答案即为\(\mathbb{E}[\max\{S\}]\),用上面的反演即可,时间复杂度为\(O(2^n)\)。
给定集合\(S\)中每个元素每次出现的概率\(p_i\),元素互相独立。求每个元素都至少出现一次的期望次数。
此时\(T\)中出现任意一个元素的概率是\(1\)减去所有元素都不出现的概率。
最值反演 min-max容斥的更多相关文章
- Coprime (单色三角形+莫比乌斯反演(数论容斥))
这道题,先说一下单色三角形吧,推荐一篇noip的论文<国家集训队2003论文集许智磊> 链接:https://wenku.baidu.com/view/e87725c52cc58bd631 ...
- BZOJ2301:莫比乌斯反演+二维容斥解决GCD范围计数
这个题是刚才刷的第一道反演题的拓展版,加上一个容斥就可以了 #include<cstdio> #include<algorithm> using std::min; ; int ...
- 【容斥原理,莫比乌斯反演】用容斥替代莫比乌斯反演第二种形式解决gcd统计问题
名字虽然很长.但是其实很简单,对于这一类问题基本上就是看你能不能把统计的公式搞出来(这时候需要一个会推公式的队友) 来源于某次cf的一道题,盼望上紫的我让潘学姐帮我代打一道题,她看了看跟我说了题解,用 ...
- LOJ #2542. 「PKUWC 2018」随机游走(最值反演 + 树上期望dp + FMT)
写在这道题前面 : 网上的一些题解都不讲那个系数是怎么推得真的不良心 TAT (不是每个人都有那么厉害啊 , 我好菜啊) 而且 LOJ 过的代码千篇一律 ... 那个系数根本看不出来是什么啊 TAT ...
- min-max 容斥
$\min - \max$ 容斥 Part 1 对于简单的$\min - \max$容斥有一般形式,表达为:$\max(S)=\sum\limits_{T\subseteq S}(-1)^{|T|-1 ...
- Min-max 容斥与 kth 容斥
期望的线性性: \[E(x+y)=E(x)+E(y) \] 证明: \[E(x+y)=\sum_i \sum_j(i+j)*P(i=x,j=y) \] \[=\sum_i\sum_ji*P(i=x,j ...
- [HDU4336]Card Collector(min-max容斥,最值反演)
Card Collector Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)To ...
- CF285 E Positions in Permutations——“恰好->大于”的容斥和允许“随意放”的dp
题目:http://codeforces.com/contest/285/problem/E 是2018.7.31的一场考试的题,当时没做出来. 题解:http://www.cnblogs.com/y ...
- min-max容斥/最值反演及其推广
设\(S\)是一个集合,\(\max(S)\)和\(\min(S)\)分别表示集合中的最大值与最小值. 那么有如下式子成立: \[\max(S)=\sum_{T \subseteq S}(-1)^{| ...
随机推荐
- LINQ的求和 平均 最大 最小 分组 计数 等等
1.简单形式: var q = from p in db.Products group p by p.CategoryID into g select g; 语句描述:使用Group By按Categ ...
- Django的安装和启动
花了将近半个月的时间终于完成了Django的初步学习,从安装到实践MVTC架构,再到写简易的model和view,踩过不少坑,因此这里分享出来,也算一个阶段性的总结. 1.安装Django pip i ...
- c/c++ 类模板初探
类模板 1,模板类里的函数都是模板函数 2,模板类里的函数,在类外面实现的时候,要用模板函数(方法:push_back)的方式实现,在类内部实现时,不需要用模板函数(方法:show)方式实现. 3,用 ...
- python中的猴子补丁Monkey Patch
python中的猴子补丁Monkey Patch 什么是猴子补丁 the term monkey patch only refers to dynamic modifications of a cla ...
- Xmanager power suit 6 最新版注册激活
Xmanager Power Suit 6.0.0012 最新版注册激活,长期更新 操作步骤 Xmanger Power Suit 官方 其实有两种 .exe 文件,一个是用于试用的,在注册的时候不能 ...
- Win10家庭版-添加[组策略]
win10家庭版有很多功能都不能用,这一次就碰到了一个找不到‘组策略’的问题,在网上搜索到了一个方法,记录一下: 新建一个txt,将下面内容复制到文本中: =====分隔符====== @echo o ...
- Python爬虫-01:爬虫的概念及分类
目录 # 1. 为什么要爬虫? 2. 什么是爬虫? 3. 爬虫如何抓取网页数据? # 4. Python爬虫的优势? 5. 学习路线 6. 爬虫的分类 6.1 通用爬虫: 6.2 聚焦爬虫: # 1. ...
- java继承-super的用法
继承的特点: 1.子类继承了父类的成员 2.具有层次结构 继承的优点: 1.代码重用 2.父类字段和方法可用于子类 3.从抽象到具体形成类的继承体系 4.可以轻松自定义子类 this:当前对象的引用 ...
- python六十四课——高阶函数练习题(二)
总结:高阶函数以及匿名函数之间的配合使用 from functools import reduce #模块一:lambda和filter的结合使用 #lt = [1,2,3,4,5,6,7,8,9] ...
- sqlserver 2000数据压缩解决方法
--sqlserver 2000数据压缩解决方法. /************************************************************************* ...