『正睿OI 2019SC Day3』
容斥原理
容斥原理指的是一種排重,補漏的計算思想,形式化的來說,我們有如下公式:
\[\left | \bigcup_{i=1}^nS_i \right |=\sum_{i}|S_i|-\sum_{i,j}|S_i\cap S_j|+...+(-1)^{n-1}\left | \bigcap_{i=1}^nS_i \right |\]
設\(P=\{1,2,...,n\}\),則容斥原理還有如下表現形式:
\[\left | \bigcup_{i=1}^nS_i \right |=\sum_{T\subseteq P}(-1)^{|T|-1}\left | \bigcap_{i\in T} S_i \right |\]
運用典型
容斥原理在很多計數題中都得到了很好的運用,最經典的就是歐拉函數計算式的推導。
定理:設\(n=p_1^{a_1}\times p_2^{a_2}\times ...\times p_k^{a_k}\),則有\(\phi(n)=n\times \sum_{i=1}^k(1-\frac{1}{p_i})\)。
證明:
\(\phi(n)\)的定義為\(1-n\)的整數中與\(n\)互質的數的個數,于是所有\(p_1,p_2,...,p_k\)的倍數都不符合要求。設\(S_i\)代表\(1-n\)內\(p_i\)的倍數所組成的集合,那么可以得到:
\[\phi(n)=n-\left | \bigcup _{i=1}^kS_i \right |\]
利用容斥原理,我們可以得到:
\[\phi(n)=n-\sum_{T\subseteq P}(-1)^{|T|-1}\left | \bigcap_{i\in T} S_i \right |\]
不難得到
\[\left | \bigcap_{i\in T} S_i \right |=\frac{n}{\prod_{i\in T}p_i}\]
于是
\[\phi(n)=n-\sum_{T\subseteq P}(-1)^{|T|-1}\frac{n}{\prod_{i\in T}p_i}\\\phi(n)=n\times (1-\sum_{T\subseteq P}(-1)^{|T|-1}\frac{1}{\prod_{i\in T}p_i})\]
而由多項式乘法可以得到:\[1-\sum_{T\subseteq P}(-1)^{|T|-1}\frac{1}{\prod_{i\in T}p_i}=\sum_{i=1}^k(1-\frac{1}{p_i})\]
所以證得結論:\[\phi(n)=n\times \sum_{i=1}^k(1-\frac{1}{p_i})\]
Min-Max容斥
類似與容斥原理,我們有一種作用于最大最小值函數的容斥計算方法,稱為\(\min-\max\)容斥。
仍設\(P=\{1,2,...,n\}\),則有
\[\max_{i=1}^n\{x_i\}=\sum_{T\subseteq P}(-1)^{|T|-1}\min_{i\in T}\{x_i\}\]
普通的\(\min-\max\)容斥還有另一種很常見的形式,即\(\min-\max\)具有對稱性:
\[\min_{i=1}^n\{x_i\}=\sum_{T\subseteq P}(-1)^{|T|-1}\max_{i\in T}\{x_i\}\]
具體證明可以參考這篇博客。
運用典型
\(\min-\max\)容斥最經典的運用就是結合數學期望的線性性,在求解\(\min-\max\)期望的題目中化繁為簡,靈活轉換。
形象的說,在期望中,兩個不相關隨機變量\(A,B\)不滿足:\[E(\max(A,B))=\max(E(A),E(B))\\ \ \\ E(\min(A,B))=\min(E(A),E(B))\]
但是我們可以利用\(\min-\max\)容斥在最大最小值間建立聯系:
\[E(\max_{i=1}^n\{x_i\})=\sum_{T\subseteq P}(-1)^{|T|-1}E(\min_{i\in T}\{x_i\})\\ \ \\ E(\min_{i=1}^n\{x_i\})=\sum_{T\subseteq P}(-1)^{|T|-1}E(\max_{i\in T}\{x_i\})\]
轉載于:https://www.cnblogs.com/Parsnip/p/11273442.html
總結
以上是生活随笔為你收集整理的『正睿OI 2019SC Day3』的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在ubuntu16.04下测试ffpla
- 下一篇: GBK 汉字编码转换