组合数学

定义与符号

  1. 用 \(n!\) 表示 \(n\) 的阶乘;\(n^{\underline k}\) 表示其下降阶乘幂;\(n^{\overline k}\) 表示其上升阶乘幂。\(n!=1\times 2\times...\times n,n^{\underline k}=n\times(n-1)\times...\times(n-k+1),n^{\overline k}=n\times(n+1)\times...\times(n+k-1)\)
  2. 用 \(A_n^m\) 表示从 \(n\) 个元素中有序 选 \(m\) 个的数量(排列),\(A_n^m=\frac{n!}{(n-m)!}=n^{\underline m}\)
  3. 用 \(C_n^m\) 或 \(n\choose m\) 表示从 \(n\) 个元素中选 \(m\) 个元素所组成的集合的数量(组合),\(C_n^m=\)\(n\choose m\)\(=\frac{n!}{(n-m)!m!}=\frac{n^{\underline m}}{m!}\)

计数

计数原理

  1. 加法原理:如果完成一件事有 \(n\) 类方法,且第 \(i\) 类方法有 \(a_i\) 种方案,则完成这件事共有 \(\Sigma a_i\) 种方案。
  2. 乘法原理:如果完成一件事有 \(n\) 个步骤,且第 \(i\) 个步骤有 \(a_i\) 种方案,则完成这件事共有 \(\Pi a_i\) 种方案。

计数方法

  1. 捆绑法。将一些元素看成一个整体,先将有限制的元素先进行计算,再将所有元素进行计算。
  2. 插空法。当要求某些元素不相邻 时,将有限制的 \(m\) 个元素放入 \(n-m+1\) 个空格之中。
  3. 隔板法。将 \(n\) 个元素放入 \(m\) 个容器中,相当于将元素分成 \(m\) 组。

组合有关恒等式

对称:

\[{n\choose k}={n \choose n-k} \]

吸收、提取:

\[{n\choose k}=\frac{n}{k}{n-1\choose k-1} \]

加法、归纳:

\[{n\choose k}={n-1\choose k}+{n-1\choose k-1} \]

证明1(组合意义):最后一个人可选可不选。

证明2:写成定义式直接加。

相伴:

\[(n-k){n\choose k}=n{n-1\choose k},k{n\choose k}=(n-k+1){n\choose k-1} \]

证明:写成定义式直接化即可。

上指标反转:

\[{n\choose k}=(-1)^k{k-n-1\choose k} \]

证明:

\[\begin{aligned} {n\choose k}&=\frac{n^{\underline k}}{k!}\\ &=\frac{n\times(n-1)\times...\times(n-k+1)}{k!}\\ &=\frac{(-1)^k\times(-n)\times(1-n)\times...\times(k-n-1)}{k!}\\ &=(-1)^k\frac{(k-n-1)^{\underline k}}{k!}\\ &=(-1)^k{k-n-1\choose k} \end{aligned} \]

三项式系数:

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

证明1(组合意义):从 \(n\) 个元素中选 \(m\) 个再从 \(m\) 个元素中选 \(k\) 个,等价于直接从 \(n\) 个数中选 \(k\) 个,再从 \(n-k\) 个中选剩余 \(m-k\) 个。

证明2:写成定义式直接化即可。

上指标求和:

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

证明1(组合意义):在 \(n+1\) 个元素中选 \(m+1\) 个元素,等价于强制在前 \(i\) 个元素中选 \(m\) 个元素,再在后面元素中选一个的方案数。

证明2:

\[\begin{aligned} {n+1\choose m+1}&={n\choose m}+{n\choose m+1}\\ &={n\choose m}+{n-1\choose m}+{n-1\choose m+1}\\ &={n\choose m}+{n-1\choose m}+{n-2\choose m}+{n-2\choose m+1}\\ &=\sum_{i=0}^n{i\choose m}=\sum_{i=m}^n{i\choose m} \end{aligned} \]

平行恒等式:

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

证明:

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

范德蒙德卷积/下指标卷积:

\[\sum_{i=0}^k{n\choose i}{m\choose k-i}={n+m\choose k} \]

证明:一共有 \(n+m\) 个元素,以 \(n\) 为断点,在两边分别选一些元素,等价于直接在 \(n+m\) 个元素中选 \(k\) 个元素。

下指标点积:

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

证明同上。

上指标卷积:

\[\sum_{i=0}^{k}{i\choose n}{k-i\choose m}={k+1\choose n+m+1} \]

证明:把 \(k\) 个元素分成两部分,每部分分别选 \(n\)、\(m\) 个,等价于有 \(k+1\) 个元素,先选择其中一个作为隔板,然后再选出 \(n+m\) 个元素。

组合数相关

\(\texttt{Lucas}\) 定理

\[{n\choose m}\equiv{\lfloor\frac{n}{p}\rfloor\choose\lfloor\frac{m}{p}\rfloor}{n\bmod p\choose m\bmod p}\pmod p,p\in prime \]

证明:\(\because{p\choose i}\bmod p=[m=1\or m=p]\) \(\therefore(a+b)^p\equiv a^p+b^p\pmod{p}\)

\(\because{n\choose m}=[x^m](1+x)^n\) \(\therefore(1+x)^n=(1+x)^{p\lfloor\frac{n}{p}\rfloor}(1+x)^{n\bmod p}\)

\(\therefore(1+x)^n\equiv(1+x^p)^{\lfloor\frac{n}{p}\rfloor}+(1+x)^{n\bmod p}\pmod{p}\)

对于每一个 \(m\),都有 \(m=p\lfloor\frac{m}{p}\rfloor+{m\bmod p}\)

\(\therefore{n\choose m}\equiv{\lfloor\frac{n}{p}\rfloor\choose\lfloor\frac{m}{p}\rfloor}{n\bmod p\choose m\bmod p}\pmod p\)

二项式定理

\[(x+y)^n=\sum_{i=0}^n{{n\choose i}x^iy^{n-i}} \]

证明:在 \(n\) 个 \((x+y)\) 中分别选一项,可以考虑枚举 \(x\) 个数分别算贡献。

拓展

\[(x+y)^{\underline n}=\sum_{i=0}^n{{n\choose i}x^{\underline i}y^{\underline {n-i}}} \]

\[(x+y)^{\overline n}=\sum_{i=0}^n{{n\choose i}x^{\overline i}y^{\overline {n-i}}} \]

证明:数学归纳法。(以第一个为例子)

  • 基本情况:当 \(n=1\) 时,有 \(x+y=x+y\)
  • 归纳步骤:已知 \(n\) 成立,当 \(n\) 变成 \(n+1\) 时,左式多出 \(x+y-n\),代入右式得到:

\[\begin{aligned} \sum_{i=0}^n{{n\choose i}x^{\underline i}y^{\underline {n-i}}(x+y-n)}&=\sum_{i=0}^n{{n\choose i}x^{\underline i}y^{\underline {n-i}}((x-i)+(y-n+i))}\\ &=\sum_{i=0}^n{{n\choose i}x^{\underline {i+1}}y^{\underline {n-i}}}+\sum_{i=0}^n{{n\choose i}x^{\underline i}y^{\underline {n-i+1}}}\\ &=\sum_{i=1}^{n+1}{{n\choose i-1}x^{\underline {i}}y^{\underline {n-i+1}}}+\sum_{i=0}^n{{n\choose i}x^{\underline i}y^{\underline {n-i+1}}}\\ &=x^{n+1}+y^{n+1}+\sum_{i=1}^{n}{{n\choose i-1}x^{\underline {i}}y^{\underline {n-i+1}}}+\sum_{i=1}^n{{n\choose i}x^{\underline i}y^{\underline {n-i+1}}}\\ &=x^{n+1}+y^{n+1}+\sum_{i=1}^n{{n+1\choose i}x^{\underline i}y^{\underline {n-i+1}}}\\ &=\sum_{i=0}^{n+1}{{n+1\choose i}x^{\underline i}y^{\underline {n+1-i}}}\\ \end{aligned} \]

牛顿级数

记 \(\Delta^na\) 表示数列 \(a\) 差分 \(n\) 次后的数列,则有:

\[\Delta^na_i=\sum_{j=0}^n(-1)^j{n\choose j}a_{i-j} \]

证明1:数学归纳法。

  • 基本情况:当 \(n=0\) 时,有 \(a_i=a_i\)
  • 归纳步骤:已知 \(n\) 成立,当 \(n\) 变成 \(n+1\) 时

\[\begin{aligned} \Delta^{n+1}a_i&=\Delta^na_i-\Delta^na_{i-1}\\ &=\sum_{j=0}^n(-1)^j{n\choose j}a_{i-j}-\sum_{j=0}^n(-1)^j{n\choose j}a_{i-j-1}\\ &=\sum_{j=0}^{n}(-1)^j{n\choose j}a_{i-j}+\sum_{j=1}^{n+1}(-1)^j{n\choose j-1}a_{i-j}\\ &=a_{i-1}+(-1)^{n+1}a_{i-n}+\sum_{j=1}^{n}(-1)^j{n\choose j}a_{i-j-1}+\sum_{j=1}^{n}(-1)^j{n\choose j-1}a_{i-j}\\ &=a_{i-1}+(-1)^{n+1}a_{i-n-1}+\sum_{j=1}^{n}(-1)^j{n+1\choose j}a_{i-j}\\ &=\sum_{j=0}^{n+1}(-1)^j{n+1\choose j}a_{i-j}\\ \end{aligned} \]

证明2:定义平移算子 \(E\),不变算子 \(I\),则差分算子 \(\Delta=I-E\)。所以有:

\[\Delta^na_i=(I-E)^na_i=(\sum_{j=0}^n{(-1)^j{n\choose j}E^jI^{n-j}})a_i=\sum_{j=0}^n{(-1)^j{n\choose j}a_{i-j}} \]

错排

记 \(f_n\) 表示长度为 \(n\) 的、不存在 \(p_i=i\) 的排列个数,则有:

\[f_n=(n-1)(f_{n-1}+f_{n-2}) \]

证明:考虑第一个元素有 \(n-1\) 种放法,设放到位置 \(k\),那么元素 \(k\) 就有两种情况:如果放在一,则剩余元素有 \(f_{n-2}\) 种放法;否则则视为元素一加入含 \(k\) 的置换环中,等价于在 \(n-1\) 元素组成的置换环中插入元素一,则有 \(f_{n-1}\) 种。

拓展鸽巢原理

将 \((\sum_{i=1}^np_i)-n+1\) 个元素放入 \(n\) 个集合,一定存在一个集合 \(i\),使得第 \(i\) 个集合至少包含 \(p_i\) 个元素。

证明:反证法。先假设第 \(i\) 个集合中放了 \(p_i-1\) 个元素,则会有一个元素不在集合中。

相关推荐
__lost6 小时前
MATLAB直接推导函数的导函数和积分形式(具体方法和用例)
数学·算法·matlab·微积分·高等数学
亦枫Leonlew19 小时前
微积分复习笔记 Calculus Volume 2 - 5.1 Sequences
笔记·数学·微积分
亦枫Leonlew5 天前
微积分复习笔记 Calculus Volume 2 - 4.3 Separable Equations
笔记·数学·微积分
亦枫Leonlew7 天前
微积分复习笔记 Calculus Volume 2 - 4.2 Direction Fields and Numerical Methods
笔记·数学·微积分
G果9 天前
《变分法·吴迪光1987年》复习汇总
数学·变分法·复习·吴迪光·1987
Cici_ovo19 天前
行列式计算方法
学习·数学
亦枫Leonlew21 天前
微积分复习笔记 Calculus Volume 2 - 3.3 Trigonometric Substitution
笔记·数学·微积分
martian66522 天前
深入详解人工智能入门数学基础:理解向量、矩阵及导数的概念
人工智能·线性代数·数学·矩阵
亦枫Leonlew1 个月前
微积分复习笔记 Calculus Volume 1 - 6.8 Exponential Growth and Decay
笔记·数学·微积分
飞滕人生TYF1 个月前
斐波那契数列 相关问题 详解
java·数学·动态规划·递归·斐波那契数列