首页 > 其他 > 详细

广义容斥-二项式反演-容斥系数

时间:2019-10-08 23:08:41      阅读:134      评论:0      收藏:0      [点我收藏+]

(好久没碰差点忘了,赶快泄个推导

目的是求恰好满足\(k\)个要求的方案数\(P(k)\)

考虑还是用满足至少\(i\)个条件的式子算,不过要为原来的式子构造容斥系数\(\alpha(j)\)
\[ \sum_{i=0}^{n}\binom{n}{i}\alpha(i)Q(i) \]
可以考虑\(P(i)?\)被算了几次。
\[ \sum_{i=0}^{n}\binom{n}{i}\alpha(i)Q(i)=\sum_{i=0}^n{P(i)\sum_{j=0}^n\binom{i}{j}\alpha(j)} \]
目的是强制使得\(P(k)=\sum_{i=0}^n{P(i)\sum_{j=0}^n\binom{i}{j}\alpha(j)}\)成立。

所以容斥系数的效果实际上就是
\[ \sum_{j=0}^n\binom{i}{j}\alpha(j)=[i==k] \]
发现\(j>i\)时其实没用,变成\(\sum_{j=0}^i\binom{i}{j}\alpha(j)=[i==k]\)

\(\alpha(i)\)单独丢出来,发现可以\(n^2\)搞出每个容斥系数,即
\[ \alpha(i)=[i==k]-\sum_{j=0}^{i-1}\binom{i}{j}\alpha(j) \]
恰好满足\(k\)个要求的方案数对应的\(\alpha(i)\)对应的可以取\(\alpha(j)=\binom{j}{k}(-1)^{j-k}\)

\(i<k\)时式子始终为\(0\),当\(i\geq k\)时有
\[ \begin{aligned} & \sum_{j=0}^i\binom{i}j{}\alpha(j)\= & \sum_{j=0}^i{\binom{i}{j}\binom{j}{k}(-1)^{j-k}}\= & \sum_{j=k}^{i}\binom{i}{j}\binom{j}{k}(-1)^{j-k}\= & \sum_{j=0}^{i-k}{\binom{i}{j+k}\binom{j+k}{k}(-1)^j}\= & \sum_{j=0}^{i-k}\frac{i^{\underline{j+k}}(j+k)^{\underline{k}}}{(j+k)!k!}(-1)^j\= & \sum_{j=0}^{i-k}\frac{i^{\underline{k}}(i-k)^{\underline{j}}(j+k)^{\underline{k}}}{k!(j+k)^{\underline{k}}j!}(-1)^j\= & \binom{i}{k}\sum_{j=0}^{i-k}\frac{(i-k)^{\underline{j}}}{j!}(-1)^j\= & \binom{i}{k}\sum_{j=0}^{i-k}\binom{i-k}{j}(-1)^j\= & [i-k==0]\= & [i==k] \end{aligned} \]
实际上丢二项式反演好用(雾
\[ f(n) = \sum_{i = 0}^{n}{g(i)\binom{n}{i}} \Longleftrightarrow g(n) = \sum_{i = 0}^n{(-1)^{n-i}\binom{n}{i}f(i)} \]

证明

\[ \begin{aligned} g(n) =& \sum_{i = 0}^n{(-1)^{n-i}\binom{n}{i} \sum_{j = 0}^{i}{g(j) \binom{i}{j}}}\=& \sum_{j = 0}^n{g(j) \sum_{i = j}^{n}{(-1)^{n - i} \binom{n}{i}\binom{i}{j} }}\=& \sum_{j = 0}^n{g(j)\sum_{i = j}^{n}{(-1)^{n - i}\binom{n}{j} \binom{n - j}{i - j}}}\=& \sum_{j = 0}^n{g(j)\binom{n}{j}\sum_{i = j}^{n}{(-1)^{n - i}\binom{n - j}{i - j}}}\=& \sum_{j = 0}^n{g(j)\binom{n}{j}(-1+1)^{n-j}}\=& \binom{n}{n}g(n) \=&g(n)\\end{aligned} \]
所以这个是正确的。

意义:(先证明再说意义还行

\(f(n)\)一般情况下代表至多满足\(n\)个条件的方案数,对应地,\(g(n)\)表示恰好满足\(n\)个条件的方案数。

当然有时候其实是反过来的,定义\(f(i)\)是至少满足\(i\)个约束的方案数,\(g(n)\)是恰满

\(n\)个约束的方案数,那么:

\[ g(k)=\sum_{i=k}^n{(-1)^{i-k}\binom{i}{k}f(i)} \]

证明就是一开始提到的构造容斥系数\(\alpha(j)\)那一坨

暴力带回去说是对的不就行了管他咋构造出来的

广义容斥-二项式反演-容斥系数

原文:https://www.cnblogs.com/cjc030205/p/11638086.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!