[總結] Min-Max容斥學習筆記


min-max 容斥

給定集合 \(S\) ,設 \(\max(S)\)\(S\) 中的最大值,\(\min(S)\)\(S\) 中的最小值,則:

\[\max(S)=\sum_{T\in S}(-1)^{|T|-1}\min(T) \]

這個東西叫 min-max容斥。

證明可以拿二項式反演證

例題

hdu4336 Card Collector

題目

\(n\) 種卡片,每一秒都有 \(P_i\) 的概率獲得一張第 \(i\) 種卡片,求每張卡片都至少有一張的期望時間。

\(\max(S)\)\(S\) 中最后獲得的那種卡片第一次獲得的期望時間, \(\min(S)\)\(S\) 中第一個獲得的那種卡片第一次獲得的期望時間,仍然滿足:

\[\max(S)=\sum_{T\in S}(-1)^{|T|-1}\min(T) \]

又因為 \(\min(T)=\frac 1{\sum\limits_{i\in T}P_i}\)

直接算就行了。

HAOI2015 按位或

題目

\(\max(S)\)\(S\) 中最后被或到的元素第一次被或到的期望時間, \(\min(S)\)\(S\) 中第一個被或到的元素第一次被或到的期望時間,還是那個式子:

\[\max(S)=\sum_{T\in S}(-1)^{|T|-1}\min(T) \]

但是這里互相不是獨立的,怎么算 \(\min(T)\)

\[\min(T)=\frac 1{\sum_{S\cap T\ne \emptyset} P_S} \]

也就是所有與 \(T\) 有交的集合 \(S\) 的概率之和

正難則反,求出所有與 \(T\) 交集為空的集合 \(S'\) 的概率之和,則它們的補集就是與 \(T\) 有交的集合 \(S\)

求出 \(S'\) 的概率之和拿 \(1\) 再減掉就好啦。這個東西拿 \(FWT\) 或者 \(FMT\) 都闊以優化一哈。

推廣 kth min-max 容斥

\[\max(S,k)=\sum_{T\in S}(-1)^{|T|-k}\cdot C(|T|-1,k-1)\cdot \min(T) \]

其中 \(\max(S,k)\) 表示 \(S\) 集合中第 \(k\) 大的元素。

例題

重返現世

題目

全網就這一道 kth min-max 容斥orz

首先式子還是那個式子,但是這里的 \(n\)\(1000\),不能 \(2^n\) 枚舉子集。考慮遞推系數求解。

\(\min(T)=\frac m{sum(T)}\),其中 \(sum(T)=\sum\limits_{i\in T}p_i\)

\(f[i][j][x]\) 表示前 \(i\) 個元素,選的 \(sum(T)\)\(j\),且將 \(k=x\) 代入式子后前面那一大串系數的值。

這樣設狀態的原因就是把等價類划分到了一起,並且容易遞推。

由組合數的性質 \(C_n^m=C_n^{n-m},C_n^m=C_{n-1}^m+C_{n-1}^{m-1}\)

可以列出 \(DP\) 轉移 \(f[i][j][x]=f[i-1][j][x]+(f[i-1][j-p[i]][x-1]-f[i-1][j-p[i]][x])\)

可以拿組合數證。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM