码迷,mamicode.com
首页 > 其他好文 > 详细

反演魔术---二项式反演

时间:2020-01-21 23:08:35      阅读:88      评论:0      收藏:0      [点我收藏+]

标签:错位   应用   方程组   线性   一个   str   class   splay   形式   

反演是一种将难化易常用的手段

一般来说, 它有如下形式:
\[ f(n) = \sum_{i = 0}^na_{ni}g(i)\g(n) = \sum_{i=0}^nb_{ni}f(i) \]
本质上来说, 反演是一个接线性方程组的过程

常见的反演有:

  • 二项式反演
  • 斯特林反演
  • 莫比乌斯反演
  • 单位根反演

二项式反演

形式一:

\[ \ F(n)=\sum\limits_{i=0}^n(-1)^i\dbinom{n}{i}G(i)\G(n)=\sum\limits_{i=0}^n(-1)^i\dbinom{n}{i}F(i) \]

形式二:

\[ \ F(n)=\sum\limits_{i=0}^n\dbinom{n}{i}G(i)\G(n)=\sum\limits_{i=0}^n(-1)^{(n-i)}\dbinom{n}{i}F(i) \]

形式三:

\[ \ F(n)=\sum_{i=n}^N(-1)^i\dbinom{n}{i}G(i)\G(n)=\sum_{i=0}^N(-1)^i\dbinom{n}{i}F(i) \]

形式四:

\[ \ F(n)=\sum_{i=n}^N\dbinom{n}{i}G(i)\G(n)=\sum_{i=0}^N(-1)^{i-n}\dbinom{n}{i}F(i) \]

比较常用的形式是二和四

下面证明形式二为例

引理:

\[ \dbinom{n}{j}\dbinom{j}{i}\=\large{\frac{n!}{j!(n-j)!}\frac{j!}{i!(j-i)!}}\=\large{\frac{n!}{i!(n-i)!}\frac{(n-i)!}{(n-j)![(n-i)-(n-j)]!}}\=\large{\dbinom{n}{i}\dbinom{n-i}{n-j}}\\]

证明

\[ \ F(n)=\sum_{i=0}^n\dbinom{n}{i}G(i)\\sum_{i=0}^n(-1)^{(n-i)}\dbinom{n}{i}F(i)\=\sum_{i=0}^n(-1)^{(n-i)}\dbinom{n}{i}\sum_{j=0}^i\dbinom{i}{j}G(j)\=\sum_{i=0}^nG(i)\sum_{j=i}^n(-1)^{(n-j)}\dbinom{n}{j}\dbinom{j}{i}\=\sum_{i=0}^nG(i)\sum_{j=i}^n(-1)^{(n-j)}\dbinom{n}{i}\dbinom{n-i}{i-j}\=\sum_{i=0}^n\dbinom{n}{i}G(i)\sum_{j=i}^n(-1)^{(n-j)}\dbinom{n-i}{i-j}\=\sum_{i=0}^n\dbinom{n}{i}G(i)\sum_{j=0}^{n-i}(-1)^{n-i-j}\dbinom{n-i}{j}\=\sum_{i=0}^n\dbinom{n}{i}G(i)(1-1)^{(n-i)}\=G(n) \]
证毕!!!

应用: 错位排列

\(f(i)\)为恰好有i位错位的方案数, $g(i) = i! $
\[ \large{g(n) = n! = \sum_{i=0}^n}f(i) \dbinom ni \]

枚举有几位错位,方案之和即为全排列

二项式反演得:
\[ f(n) = \sum_{i=0}^n(-1)^{n-i}\dbinom ni g(i)\=\sum_{i=0}^n(-1)^{n-i} \frac {n!}{(n-i)!}\=n!\sum_{i=0}^n\frac{(-1)^i}{i!} \]
是不是很奇妙

例题: 已经没有什么好害怕的了

当容斥系数为二项式反演系数时, 可以利用二项式反演加速

斯特林反演下次一定更新!

反演魔术---二项式反演

标签:错位   应用   方程组   线性   一个   str   class   splay   形式   

原文地址:https://www.cnblogs.com/Hs-black/p/12225804.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!