Loading

《组合数学》学习笔记

1.2 一一对应

定理 1-1 (Cayley 定理)

完全图 \(K_n\)\(n^{n-2}\) 种生成树。

书中给出的证明方式(构造 \(b_{1\dots (n-2)}\))实际上是 Prufer 序列

1.4~1.6 排列组合的变种

圆周排列

\(n\) 个中选 \(k\) 个在圆周上进行排列,方案数以 \(Q(n,k)\) 表示。

根据定义可得 \(Q(n,k)=\dfrac{A(n,k)}{k}\)

可重组合

\(n\) 个元素中取 \(r\) 个,可以重复取,方案数为 \(\dbinom{n+r-1}{r}\)

证明

等价于在 \(\{1,2,\dots,n\}\) 中取 \(r\) 个可以重复的元素 \((a_1,a_2,\dots,a_r)\),其中 \(a_1\le a_2\le \dots \le a_r\)

\(a_i\gets a_i+i-1\),那么它就转换成了从 \(\{1,2,\dots,n+r-1\}\) 中选择 \((a_1,a_2,\dots,a_r)\)\(a_1<a_2<\dots<a_n\)\(r\) 元组个数,即为 \(\dbinom{n+r-1}{r}\)

反之亦然。

不相邻的组合

\(A=\{1,2,\dots,n\}\)中取 \(r\) 个不相邻元素的方案数为 \(\dbinom{n-r+1}{r}\)

证明

等价于在 \(A\) 中取 \(r\) 元组 \((a_1,a_2,\dots,a_r)\)\(a_1<a_2-1,a_2<a_3-1,\dots,a_{r-1}<a_r-1\) 的个数。

\(a_i\gets a_i-i+1\) 即可。

反之亦然。

线性方程组的解数

线性方程 \(x_1+\dots+x_n=b\) 的非负整数解的个数为 \(\dbinom{n+b-1}{b}\)

可重组合的证明

可以看作 \(n\) 个有区别的盒子内放 \(b\) 个无区别的球,允许一个盒子内放多个球,即为 \(\dbinom{n+b-1}{b}\)

隔板法的证明

也可以看作 \((b+1)\) 个位置里放入 \((n-1)\) 个隔板,且允许一个位置放多个隔板。于是它的方案数也是 \(\dbinom{n+b-1}{b}\)

1.7 组合意义

例 1-33

求证:\(\dbinom{n+r+1}{r}=\dbinom{n+r}{r}+\dbinom{n+r-1}{r-1}+\dots+\dbinom{n+1}{1}+\dbinom{n}{0}\)

代数推导

\[\begin{aligned} \mathbf{LHS} &= \dbinom{n+r}{r}+\dbinom{n+r}{r-1} \\ &= \dbinom{n+r}{r}+\dbinom{n+r-1}{r-1}+\dbinom{n+r-1}{r-2} \\&= \dots \\&= \mathbf{RHS} \end{aligned} \]

组合意义

我们考虑一个原点在 \((0,0)\) 的网格。左式即为 \((0,0)\to (n+1,r)\) 的路径条数。那么,从第 \(n\) 行到第 \((n+1)\) 行,显然有 \(r\) 种情况:经过 \((n,r),(n,r-1),\dots,(n,0)\),且从这些点到 \((n+1,r)\) 的路径是唯一的。于是对于每个中间点计算从 \((0,0)\) 到它的路径条数即可。

例 1-35

求证:\(\dbinom{n}{0}+\dbinom{n}{1}+\dbinom{n}{2}+\dots+\dbinom{n}{n}=2^n\)

代数推导

\(\begin{cases}x=1 \\ y=1\end{cases}\) 代入二项式定理 \((x+y)^n\) 即可。

组合意义

考虑一个网格,其中有一条 \((0,n)\leftrightarrow (n,0)\) 的线段。可以发现,这条线段上各点到 \((0,0)\) 的曼哈顿距离相同,都为 \(n\)。所以相当于一共要走 \(n\) 步,每步可以向上或向右走,方案数为 \(2^n\)

另一种计算方法是,分别统计线段上 \(n\) 个点的方案数,即 \(\dbinom{n}{0}+\dbinom{n}{1}+\dbinom{n}{2}+\dots+\dbinom{n}{n}\)

两者相等,证毕。

例 1-37

求证:\(\dbinom{m+n}{r}=\dbinom{m}{0}\dbinom{n}{r}+\dbinom{m}{1}\dbinom{n}{r-1}+\dots+\dbinom{m}{r}\dbinom{n}{0},r\le \min(n,m)\)

组合意义一

考虑两个集合 \(A,B\)\(|A|=m,|B|=n\),我们要从 \(A,B\) 中共取出 \(r\) 个元素,即 \(\dbinom{m+n}{r}\)

那么一共有 \(r\) 种取法:\(A\) 中取 \(0\dots r\) 个,\(B\) 中取 \(r\dots 0\) 个。对于每种情况,表示一下即可。

组合意义二

考虑一个网格,\(\dbinom{m+n}{r}\) 即表示 \((0,0)\to (m+n-r,r)\) 的路径条数。

考虑一条 \((m-r,r)\leftrightarrow (m,0)\) 的线段。显然每条 \((0,0)\to (m+n-r,r)\) 的路径都需要经过这条线段上的某个点,设这个点为 \((m-x,x)\),那么 \((0,0)\to (m-x,x)\) 的条数为 \(\dbinom{m}{x}\)\((m-x,x)\to (m+n-r,r)\) 的条数为 \(\dbinom{(m+n-r)-(m-x)+(r-x)}{r-x}=\dbinom{n}{r-x}\)。根据乘法原理,得证。

1.8 应用举例

例 1-44

在一个网格中,问 \((0,0)\to (m,n)\) 且经过的所有点 \((a,b)\) 都要满足 \(a<b\) 的路径数。保证 \(m<n\)

首先,第一步一定是 \((0,0)\to (0,1)\)。考虑 \((0,1)\to (m,n)\) 的路径中,有多少条路径是不合法的。

可以发现,一条不合法的路径一定触碰了直线 \(y=x\)。将这条不合法的路径做其关于 \(y=x\) 的对称路径,那么这个新路径就是一条 \((1,0)\to (m,n)\) 的路径。反之亦然,所以 \((0,1)\to (m,n)\) 的不合法路径与 \((1,0)\to (m,n)\) 的路径一一对应。

所以方案数为 \(\dbinom{m+n-1}{n-1}-\dbinom{m+n-1}{n}\)

2.2 母函数

定义 2-1

对于序列 \(C_0,C_1,\dots\) 构造一函数 \(G(x)=C_0+C_1x+C_2x^2+\dots\) 称为序列 \(C_0,C_1,\dots\) 的母函数。

母函数是形式幂级数,计算时不考虑其是否收敛。

3.1 De Morgan 定理

集合 \(A,B\) 为集合 \(U\) 的子集,那么有 \(\overline{A\cup B}=\overline{A}\cap \overline{B}\)\(\overline{A \cap B}=\overline{A} \cup \overline{B}\)

多元形式类似。

3.2 容斥原理

式子略,可以用数学归纳法来证。

3.3 容斥原理

例 3-10

推导“错排问题”的通项公式。

\(A_i\) 为第 \(i\) 位仍在原位的全排列形成的集合。

容易发现 \(|A_1|=|A_2|=\dots=|A_n|=(n-1)!\)。同时可得 \(|A_1\cap A_2|=|A_1\cap A_3|=\dots=|A_{n-1}\cap A_n|=(n-2)!\)

\(\begin{aligned}|\overline{A_1}\cap \overline{A_2}\cap \dots \cap \overline{A_n}|&= n!-n(n-1)!+\dbinom{n}{2}(n-2)!-\dots+(-1)^n0! \\ &= n!-n!+\dfrac{n!}{2!}-\dfrac{n!}{3!}+\dots \pm 0! \\ &= n!(\dfrac{1}{2!}-\dfrac{1}{3!}+\dots \pm \dfrac{1}{n!}) \end{aligned}\)

错排问题还有生成函数解法。

posted @ 2021-05-13 19:25  Alan_Zhao_2007  阅读(205)  评论(0编辑  收藏  举报