min-max 容斥实际上就是这么个式子:
\[\max(S_k) = \sum\limits_{T\subseteq S} (-1)^{|T|-k}\dbinom{|T|-1}{k-1}\min(T) \]可以通过构造系数二项式反演证明。
这个式子在期望意义下也是正确的,通常用于将搞定全部
转化位搞定其中一个
进而转化为不包含某个子集
的方案计数,或找完的时间
转化为第一次找到的时间
。由于直接根据式子算是指数级的,通常还需要一些 dp 之类转化。
P4707 重返现世
有 \(n\) 种原料,需要集齐任意 \(k\) 种。每单位时间第 \(i\) 种原料被生成的概率是 \(\frac{p_i}{m}\) 。求期望时间。
- \(n\le 1000\),\(|n-k|\le 10\),\(\sum p = m\le 10000\)
即求 \(E(\min(U_k))\),即 \(E(\max(U_{n-k+1}))\)。使用 min-max 容斥,我们需要求求和号后的东西。\(E(\min(T))\) 是好算的:\(\dfrac{m}{\sum_{i\in T} p_i}\),剩下的部分只与 \(|T|,k\) 有关,以此为状态 dp,通过拆组合数转移。
「PKUWC2018」随机游走
给定一棵 \(n\) 个结点的树,你从点 \(x\) 出发,每次等概率随机选择一条与所在点相邻的边走过去。
有 \(Q\) 次询问,每次询问给定一个集合 \(S\),求如果从 \(x\) 出发一直随机游走,直到点集 \(S\) 中所有点都至少经过一次的话,期望游走几步。
特别地,点 \(x\)(即起点)视为一开始就被经过了一次。
min-max 容斥后转化为求第一次到达某个点集的期望时间,可以列出一个随机游走的转移,用树上高消解出系数即可。还要求子集和,FWT 预处理即可。
「2020-02-16 联考」染色 (color)
有一棵 \(n\) 个点的树,一开始所有点都是白色。
接下来有若干次操作。每次操作会等概率选取树上的一条路径,把路径上所有节点涂黑。当整棵树都被染黑时,操作就会停止。
求结束前期望进行多少次操作,答案输出时对 \(1\ 004\ 535\ 809\ (479\times 2^{21}+1)\) 取模。
min-max 容斥,相当于在树上选 \(k\) 个点,将树分成若干连通块,每条路径在小连通块内选的概率,需要记录连通个数和 \(\sum \dfrac{|B|(|B|+1)}2\),树上背包 dp 这个东西即可。可以 NTT 优化。
标签:期望,min,max,sum,容斥,游走 来源: https://www.cnblogs.com/defK/p/16033132.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。