博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
容斥与反演
阅读量:6907 次
发布时间:2019-06-27

本文共 2280 字,大约阅读时间需要 7 分钟。

反演

\[F_n\sum_{i=0}^{n}A_{n,i}G_i\]
\[G_n\sum_{i=0}^{n}B_{n,i}F_i\]
下面的直接带入到上面
\[F_n=\sum_{i=0}^{n}A_{n,i}\sum_{j=0}^{i}B_{i,j}F_j=\sum_{i=0}^{n}F_i\sum_{j=i}^{n}A_{n,j}B_{j,i}=F_n\]
\(C_{i,j}=\sum_{k=j}^{i}A_{i,k}B_{k,j}\)
如果 \(C_{i,j}=[i=j]\),那么 \(F,G\) 之间是能够反演的
\(A,B\) 都是下三角矩阵,\(C\) 就是单位矩阵
知道这个就可以矩阵求逆打表了,而且你发现直接求逆是 \(\Theta(n^2)\)

二项式反演

\[F_n=\sum_{i=0}^n {n \choose i}G_i\iff G_n=\sum_{i=0}^n (-1)^{n-i}{n \choose i}F_i\]

证明

\[F_n=\sum_{i=0}^{n}\binom{n}{i}\sum_{j=0}^{i}(-1)^{i-j}\binom{i}{j}F_j=\sum_{i=0}^{n}F_i\sum_{j=i}^{n}\binom{n}{j}\binom{j}{i}(-1)^{j-i}\]

\[=\sum_{i=0}^{n}F_i\binom{n}{i}\sum_{j=i}^{n}\binom{n-i}{j-i}(-1)^{j-i}=\sum_{i=0}^{n}F_i\binom{n}{i}\sum_{j=0}^{n-i}\binom{n-i}{j}(-1)^{j}\]
\[=\sum_{i=0}^{n}F_i\binom{n}{i}(1-1)^{n-i}=F_n\]

stirling反演

把第一类Stirling数看成无符号的

\[F_n=\sum_{i=0}^n \begin{Bmatrix} n\\i \end{Bmatrix}G_i\iff G_n=\sum_{i=0}^n (-1)^{n-i}\begin{bmatrix} n\\i \end{bmatrix}F_i\]

第一类Stirling数幂与下降幂的关系

\[x^{\underline k}=\sum_{i=0}^k(-1)^{k-i}\begin{bmatrix} k\\i \end{bmatrix}x^i\]

第二类Stirling数幂与下降幂的关系

\[x^{k}=\sum_{i=0}^k\begin{Bmatrix} k\\i \end{Bmatrix}x^{\underline i}\]

反转公式

\[\begin{cases}\sum_{k=m}^n(-1)^{n-k}\begin{bmatrix}n\\k\end{bmatrix}\begin{Bmatrix}k\\m\end{Bmatrix}=[n=m]\\\sum_{k=m}^n(-1)^{k-m}\begin{bmatrix}k\\m\end{bmatrix}\begin{Bmatrix}n\\k\end{Bmatrix}=[n=m]\end{cases}\]

证明

\[x^{k}=\sum_{i=0}^k\begin{Bmatrix} k\\i \end{Bmatrix}x^{\underline i}=\sum_{i=0}^k\begin{Bmatrix} k\\i \end{Bmatrix}\sum_{j=0}^i(-1)^{i-j}\begin{bmatrix} i\\j \end{bmatrix}x^j\]

\[=\sum_{i=0}^{k}x^i\sum_{j=i}^{k}\begin{Bmatrix} k\\j \end{Bmatrix}\begin{bmatrix} j\\i \end{bmatrix}(-1)^{j-i}\]
那么
\[\sum_{j=i}^{k}\begin{Bmatrix} k\\j \end{Bmatrix}\begin{bmatrix} j\\i \end{bmatrix}(-1)^{j-i}=[i=k]\]

另外一个同理

Min-Max容斥以及kthmax扩展

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

证明

考虑一种第 \(k\) 大值被作为最小值计算的次数

\[\sum_{j=0}^{k-1}(_{j}^{k-1})(-1)^j=(1-1)^{k-1}=[k=1]\]

kthmax

求第 \(k\) 大元素

构造容斥系数 \(f\)
使得
\[kthmax(S)=\sum_{T\subset S}f(|T|)min(T)\]
考虑第 \(x\) 大值被作为最小值计算的次数
\[\sum_{j=0}^{x-1}(_{j}^{x-1})f(j+1)\]
它应该等于 \([x=k]\)
\[\sum_{j=0}^{x-1}(_{j}^{x-1})f(j+1)=[x=k]\]
二项式反演得到
\[f(x)=(-1)^{x-k}(_{k-1}^{x-1})\]
那么
\[kthmax(S)=\sum_{T\subset S}(-1)^{|T|-k}(_{k-1}^{|T|-1})min(T)\]

转载于:https://www.cnblogs.com/cjoieryl/p/10181224.html

你可能感兴趣的文章
五个免费的轻量级Linux发行版
查看>>
C# GDI+绘制矩形圆角
查看>>
C# DataTable常用操作总结 (转载)
查看>>
还原virtual函数的本质-----C++
查看>>
《GK101任意波发生器》升级固件发布(版本:1.0.2build306)
查看>>
hug and Compression Resistance
查看>>
sql server 2008分页
查看>>
lintcode:Pow(x, n)
查看>>
WebService中使用Aspose.Cells.dll
查看>>
Android菜鸟的成长笔记(28)——Google官方对Andoird 2.x提供的ActionBar支持
查看>>
【转载】装饰模式与代理模式的区别
查看>>
Persona——Web人物角色介绍
查看>>
一个三年工作经验的软件工程师的经验之谈
查看>>
Keepalived+Redis高可用部署(第二版)
查看>>
理解Linux中断 (3)【转】
查看>>
3 hql语法及自定义函数(含array、map讲解) + hive的java api
查看>>
欢迎各位技术牛人增加Swift QQ群:343549891
查看>>
Linux使用imagemagick的convert命令压缩图片、节省服务器空间
查看>>
selenium测试(Java)-- 显式等待(九)
查看>>
MySQL 5.7 mysqlpump 备份工具说明
查看>>