组合数学

水表

Tony102

andysj

wangrx

xxbbkk

YZHX

CJzjy

凉城無愛

Lumos壹玖贰壹

Lead in

组合数学(Combinatorial mathematics),又称为离散数学。广义的组合数学就是离散数学,狭义的组合数学是离散数学除图论、代数结构、数理逻辑等的部分。

狭义的组合数学主要研究满足一定条件的组态(也称组合模型)的存在、计数以及构造等方面的问题。 组合数学的主要内容有组合计数、组合设计、组合矩阵、组合优化(最佳组合)等。

核心内容:用算法处理离散对象。

基础

加法原理,乘法原理。

排列:\(A_n^m=\frac{n!}{(n-m)!}\)

(从\(n\)个元素中选\(m\)个元素排列)

组合:\(C_n^m=\frac{A_n^m}{m!}=\frac{n!}{m!(n-m)!}\)

常用\(\binom{n}{m}\)表示。

二项式定理:

\[(a+b)^n=\sum\limits^{n}_{i=0}\binom{n}{i}a^{n-i}b_i \]

基础式子

好吧其实一点也不基础

\[\binom{n}{m}=\binom{n-1}{m-1}+\binom{n-1}{m} \]

\[\binom{n}{m}=\binom{n}{n-m} \]

\[\binom{n}{m}=\frac{n}{m}\binom{n-1}{m-1} \]

\[\sum\limits_{i=0}^n\binom{n}{i}=2^n \]

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

\[\sum\limits_{i=0}^m\binom{n}{i}\binom{m}{m-i}=\binom{m+n}{m} \]

\[\sum\limits_{i=0}^n\binom{n}{i}^2=\binom{2n}{n} \]

\[\sum_{i=0}^ni^2\binom{n}{i}=n(n+1)2^{n-2} \]

\[\sum_{i=0}^n\binom{i}{m} = \binom{n+1}{m+1} \]

\[\binom{n}{m}\binom{m}{k} = \binom{n}{k}\binom{n-k}{m-k} \]

\[\sum_{i=0}^n\binom{n-i}{i}=F_{n+1} \]

斯特林数

第二类斯特林数

\[\begin{Bmatrix}n\\ k\end{Bmatrix}=\begin{Bmatrix}n-1\\ k-1\end{Bmatrix}+k\begin{Bmatrix}n-1\\ k\end{Bmatrix} \]

\[\begin{Bmatrix}n\\m\end{Bmatrix}=\sum\limits_{i=0}^m\dfrac{(-1)^{m-i}i^n}{i!(m-i)!} ​ \]

第一类斯特林数

\[\begin{bmatrix}n\\ k\end{bmatrix}=\begin{bmatrix}n-1\\ k-1\end{bmatrix}+(n-1)\begin{bmatrix}n-1\\ k\end{bmatrix} \]

上升幂,下降幂与普通幂

\[x^{\overline{n}}=\sum_{k=0}^n \begin{bmatrix}n\\ k\end{bmatrix} x^k \]

\[x^n=\sum_{k=0}^n \begin{Bmatrix}n\\ k\end{Bmatrix} (-1)^{n-k} x^{\overline{k}} \]

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

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

好像是用数学归纳法证明。

不会整

贝尔数

\[B_n=\sum_{k=0}^n \begin{Bmatrix}n\\ k\end{Bmatrix} \]

还有贝尔三角形,在平常可以看数字猜结论

一点容斥

不会细讲,来几个模型。

不定方程非负整数解计数

给定方程\(\sum\limits_{i=1}^nx^i=m\)和\(n\)个限制条件\(x^i\leq b_i\) ,求解的个数。

Easy:去掉限制

\[ans=C^{n-1}_{m+n-1} \]

插板法。

加入\(n-1\)个球,问题变为在\(m+n-1\)个球中选\(n-1\)个球,这\(n-1\)个球把序列分为\(n\)份,每份对应一个\(x^i\) 。

Hard:\(x^i\leq b^i\)

正难则反。

\[ans=\left|\bigcap_{i=1}^{n}S_i\right|=|U|-\left|\bigcup_{i=1}^n\overline{S_i}\right| \]

把上界限制转化为下界限制,把下界减掉,就可以啦。

枚举限制条件的子集\(a\) 。

求解

\[\sum_{i=1}^nx_i=m-\sum_{i=1}^k(b_{a_i}+1) \]

最后减掉。

例题:[HAOI2008 硬币购物]。

经典错排

递推:

\[d_i=(i-1)(d_{i-1}+d_{i-2}) \]

容斥:

\[d_n=n!\sum_{k=0}^n\frac{(-1)^k}{k!} \]

Min-max容斥

\[\max_{i\in S}{x_i}=\sum_{T\subseteq S}{(-1)^{|T|-1}\min_{j\in T}{x_j}} \]

\[\min_{i\in S}{x_i}=\sum_{T\subseteq S}{(-1)^{|T|-1}\max_{j\in T}{x_j}} \]

最为难得的是,它在期望意义下成立。

\[E\left(\max_{i\in S}{x_i}\right)=\sum_{T\subseteq S}{(-1)^{|T|-1}E\left(\min_{j\in T}{x_j} \right)} \]

\[E\left(\min_{i\in S}{x_i}\right)=\sum_{T\subseteq S}{(-1)^{|T|-1}E\left(\max_{j\in T}{x_j} \right)} \]

\[\underset{i\in S}{\operatorname{lcm}}{x_i}=\prod_{T\subseteq S}{\left(\gcd_{j\in T}{x_j} \right)^{(-1)^{|T|-1}}} \]

没了

”欧拉数“

在计算组合中,欧拉数(Eulerian Number)是从\(1\)到\(n\)中正好满足\(m\)个元素大于前一个元素(具有 \(m\)个“上升”的排列)条件的排列 个数。定义为:

\[A(n, m) = \langle \begin{aligned} & n \\ & m - 1 \\ \end{aligned} \rangle \]

本来以为是个很有意思的的东西的,直到我看到他的难度。。。

CF Easy3100,CF Hard3500,UOJ的题AC代码不超过十个而且长度都在11k以上。。。劝退。

题目

热身题

求:

\[(\sum\limits_{i=0}^n\sum\limits_{j=0}^i(C_n^m\%2))\% P \]

上一篇:8 搜索m*n矩阵中目标值的个数(Search a 2D Matrix II)


下一篇:吴恩达机器学习笔记-9.1(神经网络1)