Files
handsomezhuzhu.github.io/otherdocs/离散/03_组合数学.md
2026-01-07 00:27:21 +08:00

5.7 KiB
Raw Blame History

第三章:组合数学

3.0 基础数论概念 (补充)

  • 完全数 (Perfect Number)
    • 一个正整数等于其所有真因子(即除了自身以外的约数)之和。
    • $6 = 1 + 2 + 3$$28 = 1 + 2 + 4 + 7 + 14$。
    • 考点:判断给定数字是否为完全数,或计算其真因子之和。

3.1 基础计数原理

3.1.1 加法与乘法原理

  • 加法原理 (分类)S = S_1 S_2 … (互不相交),则 |S| = |S_1| + |S_2| …
  • 乘法原理 (分步):步骤 1 有 n_1 种,步骤 2 有 n_2 种... 则总数为 n_1 \times n_2 …

3.1.2 排列与组合 (Notation: C_n^r, P_n^r)

模型 公式 典型场景
排列 (有序) P_n^r = \frac{n!}{(n-r)!} n 人选 r 人排队拍照
组合 (无序) C_n^r = \frac{n!}{r!(n-r)!} n 人选 r 人组队
可重排列 n^r r 位密码,每位 n 种选择
可重组合 C_{n+r-1}^r n 种口味冰淇淋选 r 球 (隔板法)

3.1.3 组合恒等式

  1. 对称性C_n^r = C_n^{n-r}
  2. 帕斯卡公式C_n^k = C_{n-1}^k + C_{n-1}^{k-1}
    • 组合意义:选 k 人,要么包含特定人 A (C_{n-1}^{k-1}),要么不包含 A (C_{n-1}^k)。
  3. 二项式定理(x+y)^n = \sum_{k=0}^n C_n^k x^{n-k} y^k
    • 推论:\sum_{k=0}^n C_n^k = 2^n (所有子集个数)
    • 推论:\sum_{k=0}^n (-1)^k C_n^k = 0 (奇数个元素的子集数 = 偶数个元素的子集数)
  4. 范德蒙恒等式C_{m+n}^r = \sum_{k=0}^r C_m^{k} C_n^{r-k}

3.2 高级计数方法

3.2.1 鸽巢原理 (Pigeonhole Principle)

  • 原理N 个物体放入 k 个盒子,必有一个盒子至少有 \lceil N/k \rceil 个物体。
  • 应用技巧:准确定义“鸽子”(物体)和“巢”(分类标准)。
    • :任意 13 人中必有 2 人生肖相同 (13/12 \to 2)。

3.2.2 容斥原理 (Inclusion-Exclusion)

求 $|A_1 A_2 A_n|$

  • 公式\sum |A_i| - \sum |A_i ∩ A_j| + \sum |A_i ∩ A_j ∩ A_k| - …
  • 错排问题 (D_n)n 封信全部装错信封的方法数。
    • D_n = n!(1 - \frac{1}{1!} + \frac{1}{2!} - … + (-1)^n \frac{1}{n!})
    • 递推式:D_n = (n-1)(D_{n-1} + D_{n-2})

3.2.3 球盒模型 (Twelvefold Way 概览)

n 个球放入 k 个盒子:

球 (Label) 盒子 (Label) 限制 方案数
不同 不同 k^n
不同 不同 \le 1 P_k^n
相同 不同 C_{n+k-1}^n (隔板法)
相同 不同 \ge 1 C_{n-1}^{k-1} (先各放1个)
不同 相同 S_2(n,k) (第二类斯特林数)

3.3 递推关系 (Recurrence Relations)

3.3.1 线性常系数齐次递推关系

形式:a_n + c_1 a_{n-1} + … + c_k a_{n-k} = 0 求解步骤

  1. 写出特征方程$r^k + c_1 r^{k-1} + … + c_k = 0$。
  2. 求特征根 $r_1, r_2, …$。
  3. 写出通解结构:
    • 无重根a_n = A_1 r_1^n + A_2 r_2^n + …
    • 有重根 (如 r_1m 重根)a_n = (A_1 + A_2 n + … + A_m n^{m-1}) r_1^n + …
  4. 代入初值求解常数 $A_i$。

3.3.2 生成函数 (Generating Functions)

  • 定义$G(x) = \sum_{n=0}^\infty a_n x^n$。
  • 应用场景
    • 求解组合数:如 (1+x)^n 的系数。
    • 求解不定方程 x_1 + x_2 + x_3 = k 的非负整数解个数。
      • 构造多项式 $(1+x+x^2+…)^3$,求 x^k 系数。

3.4 典型考题:不定方程解计数

题目:求 x_1 + x_2 + x_3 = 15 的整数解个数,满足 $x_1 ≥ 1, 0 ≤ x_2 ≤ 5, x_3 ≥ 0$。

解题思路

  1. 换元消下界:令 $y_1 = x_1 - 1 ≥ 0$。
    • 原方程变为 $(y_1+1) + x_2 + x_3 = 15 ⇒ y_1 + x_2 + x_3 = 14$。
  2. 全集计算:无上限限制时的非负整数解。
    • $\displaystyle N = C_{14+3-1}^{3-1} = C_{16}^2 = 120$。
  3. 容斥处理上界
    • 坏条件 $P_1$x_2 ≥ 6 (即原题 x_2 > 5)。
    • 在坏条件 P_1 下,令 $z_2 = x_2 - 6 ≥ 0$。
    • 方程变为 $y_1 + (z_2+6) + x_3 = 14 ⇒ y_1 + z_2 + x_3 = 8$。
    • $|P_1| = C_{8+3-1}^2 = C_{10}^2 = 45$。
  4. 最终结果$Ans = N - |P_1| = 120 - 45 = 75$。

3.5 典型考题:常系数齐次线性递推关系求解

题目:求解递推关系 $a_n = 7a_{n-1} - 16a_{n-2} + 12a_{n-3}$,初始条件为 $a_0 = 0, a_1 = 4, a_2 = 18$。

解题步骤

  1. 构造特征方程 将递推式移项得 $a_n - 7a_{n-1} + 16a_{n-2} - 12a_{n-3} = 0$。 对应的特征方程为: r^3 - 7r^2 + 16r - 12 = 0

  2. 求解特征根 观察系数,尝试代入 $r=2$$8 - 28 + 32 - 12 = 0$,故 (r-2) 是因子。 多项式除法分解得: (r-2)(r^2 - 5r + 6) = 0 (r-2)(r-2)(r-3) = 0 解得特征根:r_1 = 2 (二重根)r_2 = 3 (单根)。

  3. 写出通解结构 对于二重根 2 和单根 $3$,通解形式为: a_n = (C_1 + C_2 n) \cdot 2^n + C_3 \cdot 3^n

  4. 代入初始条件求解常数

    • n=0 时:C_1 + C_3 = 0 \implies C_3 = -C_1
    • n=1 时:(C_1 + C_2) \cdot 2 + 3C_3 = 4
    • n=2 时:(C_1 + 2C_2) \cdot 4 + 9C_3 = 18

    C_3 = -C_1 代入后两式:

    • 2C_1 + 2C_2 - 3C_1 = 4 \implies -C_1 + 2C_2 = 4
    • 4C_1 + 8C_2 - 9C_1 = 18 \implies -5C_1 + 8C_2 = 18

    联立求解: 由第一式得 $C_1 = 2C_2 - 4$,代入第二式: -5(2C_2 - 4) + 8C_2 = 18 -10C_2 + 20 + 8C_2 = 18 -2C_2 = -2 \implies C_2 = 1 回代得 C_1 = 2(1) - 4 = -2 C_3 = -(-2) = 2

  5. 最终解 a_n = (-2 + n) \cdot 2^n + 2 \cdot 3^n 或整理为: a_n = (n-2)2^n + 2 \cdot 3^n