课程:组合计数 第一讲 排列组合入门

概念

加法原理与乘法原理

若将问题划分为若干两两互斥的情形 \(S_1,\dots,S_m\),则总数为 \(\sum_{i=1}^m |S_i|\)(加法原理)。
若一个构造过程分成相继的若干步,且“每条合法方案”可由各步的选择唯一确定,则总数为各步可选数目的乘积(乘法原理)。

要点

  • “互斥”= 不重不漏;“相乘”要求“路径唯一性”(不同步的选择拼起来不会重复/漏计)。
  • “或”用加法,“且”用乘法;分类不互斥或步骤不独立会导致重/漏计。
  • 和本讲探究对齐:在例题一中“车牌格式为两类”是互斥分类,用加法;类内每位字符独立选择,用乘法。

例子

  • 例 1:解锁密码是“4 位数字”或“6 位数字”,总数 \(=10^4+10^6\)
  • 例 2:编号三位:首位 26 个大写字母,后两位各 10 个数字,总数 \(=26\cdot 10\cdot 10\)
  • 例 3:从两所学校各选一名代表参赛:第一所 \(a\) 种选法,第二所 \(b\) 种,总数 \(=a\cdot b\)

理解

  • 把“问题空间”画成若干不相交的块(分类),块大小相加;
    把“构造路径”看作多步决策树,每前进一步分叉,整条路径唯一决定一个结果,路径数相乘。

排列与组合

\(n\) 个互异元素中“按顺序”选 \(k\) 个的方案数为 \(A(n,k)=\dfrac{n!}{(n-k)!}\)
\(n\) 个互异元素中“无顺序”选 \(k\) 个的方案数为 \(C(n,k)=\binom{n}{k}=\dfrac{n!}{k!(n-k)!}\)

要点

  • 有序/角色区分 → 排列;无序/不分角色 → 组合。
  • \(A(n,3)=C(n,3)\cdot 3!\)\(C(n,k)=C(n,n-k)\)

例子

  • 例 1:从 \(n\) 人中选班长/副班长/学习委员(不同角色):\(A(n,3)\)
  • 例 2:从 \(n\) 人中选 3 人组队(不分角色):\(C(n,3)\)
  • 例 3:先选 4 人再指定其中两人担任“组长/副组长”(有序指派):\(C(n,4)\cdot A(4,2)\)

理解

  • “组合”先选集合,“排列”在集合内再排位置;
    把“角色”视为“位置”,角色越多越偏向排列。

二项式系数

\(n\) 个互异元素中“无顺序”选取 \(k\) 个的方案数

\[C(n,k)=\binom{n}{k}=\frac{n!}{k!(n-k)!}. \]

要点

  • “无序/角色不分”用组合;“选出来再打乱顺序”会重复计数。
  • 对称性:\(C(n,k)=C(n,n-k)\)(选 \(k\) 个等价于“弃掉 \(n-k\) 个”)。

例子 1

\(10\) 人中选 \(3\) 人组成小组:\(C(10,3)\)。小组内无职位区分。


定理

帕斯卡恒等式

\(1\le k\le n-1\)

\[\binom{n}{k}=\binom{n-1}{k}+\binom{n-1}{k-1}. \]

要点

  • 固定某元素 \(P\):不选 \(P\) 的方案数 \(C(n-1,k)\);选 \(P\) 的方案数 \(C(n-1,k-1)\);互斥相加。

例子

  • 例 1:从 \(n\) 人中选 \(k\) 人,按“是否选到小明”分类。
  • 例 2:\((1+x)^n\) 的系数递推可由该恒等式导出。
  • 例 3:杨辉三角相邻两数之和等于下一行对应数。

理解

  • “是否包含某元素”的二分,是最基本的互斥分类;该恒等式是这种分类的代数化。

  • 二项式定理

    对任意实数 \(a,b\) 与整数 \(n\ge 0\)

    \[(a+b)^n=\sum_{k=0}^{n}\binom{n}{k}a^{n-k}b^k. \]

    要点

    • \(n\) 个括号中的每个选择 \(a\)\(b\),恰选 \(k\)\(b\) 的方案数为 \(C(n,k)\)
    • 常见推论:\(\sum_k \binom{n}{k}=2^n\)\(\sum_{k\ \text{偶}}\binom{n}{k}=\sum_{k\ \text{奇}}\binom{n}{k}=2^{n-1}\)(见“奇偶配对”理解)。

    例子

    • 例 1:\(a=b=1\) 时总子集数为 \(2^n\)
    • 例 2:\(a=1,b=-1\) 时交错和为 \(0\)\(n\ge 1\))。
    • 例 3:系数恒等式来自不同取值的代入(如 \(a=2,b=1\))。

    理解

    • 01 选择的组合模型:每个括号“选/不选 \(b\)”,等价于从 \(n\) 个位置里选 \(k\) 个位置放 \(b\)。合并同类项就把“无序选择”的本质暴露为组合数。

Vandermonde 恒等式

\(r,s,m\) 为非负整数,

\[\binom{r+s}{m}=\sum_{i=0}^{m}\binom{r}{i}\binom{s}{m-i}. \]

要点

  • \(r+s\) 个元素分成两组:前 \(r\) 与后 \(s\);从总共 \(m\) 个的选择等价于“在前组取 \(i\),后组取 \(m-i\)”,对 \(i\) 求和。

与探究对齐:你提出的“固定 \(x\) 个人”的推广,正确形式应是乘积 \(\binom{x}{i}\binom{n-x}{k-i}\) 的求和,并包含 \(i=0\) 情形。

例子

  • 例 1:从两所学校共 \(r+s\) 人中选 \(m\) 人,按两校人数切分计数。
  • 例 2:\((1+x)^{r+s}=(1+x)^r(1+x)^s\)\(x^m\) 系数比较。
  • 例 3:取 \(r=s\) 的对称情形可给出中心二项式的分拆。

理解

  • “分块—卷积”:把整体的选择拆解为各子块上的选择,求和即系数卷积;与多项式乘法的系数卷积直觉一致。

加权恒等式(标记法)— 例:\(k\binom{n}{k}=n\binom{n-1}{k-1}\)

\(n\ge k\ge 1\)

\[k\binom{n}{k}=n\binom{n-1}{k-1}. \]

要点

  • 计数“带一个标记元素的 \(k\) 人组”:先选组再标记 vs. 先定标记再补齐,二者计数相同。

例子

  • 例 1:带“队长”的 \(k\) 人小队;
  • 例 2:从 \(n\) 个点选 \(k\) 个并指定一个特殊点;
  • 例 3:抽签时“抽到某人”的概率按两种方式计算一致。

理解

  • “标记”把组合问题与线性因子连接:标记数 \(k\) 替代为 \(n\) 与规模降一的组合数,体现“先标记再自由选择”的思维。

例题

例题 1|分类与步骤的边界感

题目:车牌样式有两类,互斥。

  • A 类:2 个大写字母 + 4 个数字(如 AB1234);
  • B 类:3 个大写字母 + 3 个数字(如 ABC123)。
    字母和数字均可重复。问共有多少种车牌?

解:

  • A 类:\(26^2\cdot 10^4\);B 类:\(26^3\cdot 10^3\)
  • 两类互斥,用加法原理:

\[26^2\cdot 10^4+26^3\cdot 10^3. \]

要点:若把“先选类”与“填位”混淆成乘法,会误算;必须先辨析“或/且”。


例题 2|排列还是组合?

题目:从 \(n\) 人中选出 3 人组成“班长、学习委员、生活委员”三职;
以及,从 \(n\) 人中选出 3 人组成“学习小组”。两问各有多少种方案?

解:

  • 职位:有序(角色区分),\(A(n,3)=n\cdot(n-1)\cdot(n-2)\)
  • 小组:无序(角色不分),\(C(n,3)=\dfrac{n(n-1)(n-2)}{6}\)

要点:若把小组当成排列,会把同一组的 \(3!\) 种排法重复计数。


例题 3|二项式定理的组合解释

题目:解释 \((1+1)^n=\sum_{k=0}^n \binom{n}{k}\)\((1-1)^n=\sum_{k=0}^n (-1)^k\binom{n}{k}\) 的意义。

解:

  • \((1+1)^n=2^n\):从 \(n\) 个元素中选任意子集(每个元素选/不选),总数 \(2^n\);按子集大小分层,层大小为 \(C(n,k)\),相加得 \(2^n\)
  • \((1-1)^n=0\)(当 \(n\ge 1\)):用加权计数(选 \(k\) 个记 \((-1)^k\) 权重),正负抵消到 \(0\)

探究

Round 1【疑问】回复

关于帕斯卡恒等式,我们说“固定一个人 P,考虑包含和不包含 P 的情况”,这个是否可以推广到固定 x 个人:

\[\binom{n}{k} = \sum_{i = 1}^{x} \big(\binom{n - x}{k} + \binom{n - x}{k - i}\big) \times \binom{x}{i} \]

表示,对于 x 个人中,考虑每次选取 i 个,每次就有 \((x\ i)\) 个情况,每个情况的贡献就是括号内的那么多,这个对吗?

  • 正确的推广是 Vandermonde 恒等式(你已经走在正确方向上了),应写成

\[\binom{n}{k}=\sum_{i=0}^{x}\binom{x}{i}\binom{n-x}{\,k-i\,}. \]

  • 组合意义:把 \(n\) 人分成“固定的 \(x\) 人集合 S”和“其余 \(n-x\) 人”。从 \(n\) 人里选 \(k\) 人,等价于“从 S 里选 \(i\) 人、从其余里选 \(k-i\) 人”,对 \(i\) 求和。
  • 你的式子里“\(\binom{n-x}{k}+\binom{n-x}{k-i}\)”会重复计数;应是乘积 \(\binom{x}{i}\binom{n-x}{k-i}\)。另外还需要包含 \(i=0\) 的项(不选 S 中的人)。
  • 边界写法:可将求和写作 \(i=0\)\(k\),并按约定令 \(\binom{a}{b}=0\)(当 \(b<0\)\(b>a\))以免专门处理越界。
  • 特例 \(x=1\) 就是帕斯卡恒等式:

\[\binom{n}{k}=\binom{1}{0}\binom{n-1}{k}+\binom{1}{1}\binom{n-1}{k-1} =\binom{n-1}{k}+\binom{n-1}{k-1}. \]

Round 2【理解】回应

二项式定理本质上就是由于 \(a/b\) 选取的 01 性质以及合并同类项的“无序/不分角色”性质,成为了组合数的直接体现。那些常见恒等式我觉得还需要多见一见,当作例子罗列一下。

完全同意。给你一份“常见恒等式速览”(都可用组合法或代数法证明):

  • 总数与奇偶分裂

\[\sum_{k=0}^{n}\binom{n}{k}=2^n,\quad \sum_{k\ \text{偶}}\binom{n}{k}=\sum_{k\ \text{奇}}\binom{n}{k}=2^{n-1}. \]

  • 加权求和(标记法)

\[\sum_{k=0}^{n}k\binom{n}{k}=n\,2^{n-1},\qquad \sum_{k=0}^{n}k(k-1)\binom{n}{k}=n(n-1)\,2^{n-2}. \]

(推得 \(\sum k^2\binom{n}{k}=n\,2^{n-1}+n(n-1)\,2^{n-2}\)

  • Hockey-stick(冰球杆)

\[\sum_{i=r}^{n}\binom{i}{r}=\binom{n+1}{r+1}. \]

  • Vandermonde(你刚用到的)

\[\binom{r+s}{m}=\sum_{i=0}^{m}\binom{r}{i}\binom{s}{m-i}. \]

Round 3【例题】讲评

例题一

你已定位错误来源。这里“车牌格式”两类互斥,每类内部“位次固定(字母位、数字位)”,不需要再乘 \(6!\)
正确答案:

\[26^2\cdot 10^4+26^3\cdot 10^3 =6{,}760{,}000+17{,}576{,}000 =24{,}336{,}000. \]

例题二

两种方法一致:

\[A(n,3)=n(n-1)(n-2)=\binom{n}{3}\cdot 3!\,, \]

前者“按位填人”,后者“先选人再排位”,路径唯一所以不重不漏。

例题三

解释到位:

  • \((1+1)^n=\sum_{k}\binom{n}{k}\) 是按子集大小分层求和;
  • \((1-1)^n=\sum_{k}(-1)^k\binom{n}{k}=0\)\(n\ge1\))来自“选择 \(b\) 的位置数目为 \(k\),权重 \((-1)^k\) 的加权抵消”。

练习

训练

T1

设密码由 6 位字符组成。每位可为数字或大写字母,但必须至少包含 1 个字母。你如何用“先全计再容斥一个集合”的思路避免分类重叠?写出表达式(不必化简)。

考虑先计算出全部情况,然后减去一个字母都不包含的情况。

\[\mathrm{ans} = (26 + 10) ^ 6 - 10^6 \]

T2

\(n\) 人中选 4 人排成一行并指定其中两人为组长和副组长,与“先选 4 人再在其中指派组长和副组长”的乘法拆分是否一致?给出等式并说明为何无重复。

一样的,\(C(n,4) * C(4,2)\),在公式上还是理解上都一样的。
因为排成一行本身就是选取和分职两个动作的结合。
不过这个应该和这种选法也是等价的:直接从 n 个人里选两个当组长,再从 n-2 里选两个当副组长,也就是 \(C(n,2) + C(n-2, 2)\)

T3

用组合解释说明 \(k\cdot \binom{n}{k}=n\cdot \binom{n-1}{k-1}\) 成立(提示:两种方式计数“带一个标记的 \(k\) 人组”)。

组合意义解释不出来。但是公式上是这样的:

\[\mathrm{LHS} = k \cdot \cfrac{n!}{k! (n-k)!} = \cfrac{n!}{(k - 1)! (n-k)!} \\ \mathrm{RHS} = n \cdot \cfrac{(n-1!}{(k-1! (n-k)!} = \cfrac{n!}{(k - 1)! (n-k)!} \]

T4

\(a=b=1\) 的二项式定理给出 \(\sum_{k\ \text{偶}} \binom{n}{k}=\sum_{k\ \text{奇}} \binom{n}{k}\) 的理由。

\(a=b=1\) 的二项式定理:

\[(1 + 1) ^ n = \sum _{k = 0} ^ n \binom{n}{k} 1^{n - k}1^k \]

我不能证明。

批改与讲评(T1–T4)

T1 正确

设密码由 6 位字符组成。每位可为数字或大写字母,但必须至少包含 1 个字母。

你的容斥表达式无误:

\[\text{ans}=(26+10)^6-10^6. \]

T2 需订正与补齐

从 n 人中选 4 人排成一行并指定其中两人为组长和副组长,与“先选 4 人再在其中指派组长和副组长”的乘法拆分是否一致?

  • 若不考虑队形,只做“先选 4 人,再指派组长/副组长(有序)”,应为

\[\binom{n}{4}\cdot A(4,2)=\binom{n}{4}\cdot 12. \]

你写成了 \(\binom{n}{4}\cdot \binom{4}{2}\),少乘了角色的次序 \(2!\)

  • 若题目真的包含“排成一行”(队形有序),则

\[A(n,4)\cdot A(4,2) \quad\text{或}\quad \binom{n}{4}\cdot 4!\cdot A(4,2), \]

两者等价,因为 \(A(n,4)=\binom{n}{4}\cdot 4!\)

  • 你提出的“先选两位组长、再选两位副组长”的想法要改成“先选组长,再选副组长,再选两名普通成员”,表达为

\[n\cdot (n-1)\cdot \binom{n-2}{2}. \]

它与上式等价,因为

\[\binom{n}{4}\cdot A(4,2) =\frac{n(n-1)(n-2)(n-3)}{24}\cdot 12 =n(n-1)\cdot \frac{(n-2)(n-3)}{2} =n(n-1)\binom{n-2}{2}. \]

T3 组合解释补上(代数推导里有小括号/阶乘笔误)

说明 \(k\binom{n}{k}=n\binom{n-1}{k-1}\)

  • 组合意义:计数“带一个标记元素的 \(k\) 人组”。
    先选组再标记:\(\binom{n}{k}\cdot k\);先标记再补全:\(n\cdot \binom{n-1}{k-1}\)。二者计同一对象,故相等。

  • 代数式:

\[k\binom{n}{k} = k\cdot \frac{n!}{k!(n-k)!} =\frac{n!}{(k-1)!(n-k)!} = n\cdot \frac{(n-1)!}{(k-1)!(n-k)!} = n\binom{n-1}{k-1}. \]

T4 给出两种证明“偶项和 = 奇项和”

证明 \(\displaystyle \sum_{k\ \text{偶}}\binom{n}{k}=\sum_{k\ \text{奇}}\binom{n}{k}\)\(n\ge 1\)

代数法(用二项式定理):

\[(1+1)^n=\sum_{k=0}^n \binom{n}{k}=2^n,\qquad (1-1)^n=\sum_{k=0}^n (-1)^k\binom{n}{k}=0. \]

把两式相加/相减可得奇偶两部分各为 \(2^{n-1}\),因此相等。

组合法
一、总子集数是 \(2^n\)
  • 对于一个有 \(n\) 个元素的集合,每个元素都有两种独立选择:选/不选。
  • 用乘法原理,\(2\times 2\times\cdots\times 2=2^n\) 种选择,对应所有子集的总数。
二、总子集数也等于 \(\sum_{k=0}^n \binom{n}{k}\)
  • 按“子集大小”分层统计:大小为 \(k\) 的子集有 \(C(n,k)\) 个。
  • 把各层相加,就得到“所有子集”的总数:

\[\sum_{k=0}^n \binom{n}{k} = 2^n. \]

三、为什么“偶数大小的子集数 = 奇数大小的子集数 = \(2^{n-1}\)
  • 设定一个固定元素 \(P\)。定义配对映射

\[\phi(S)=S\ \triangle\ \{P\}, \]

即“把 \(P\) 的状态在 \(S\) 里翻转”(对称差:如果 \(P\in S\) 就删掉,否则就加入)。

这个映射有三个关键性质:

  • 双射(可逆):\(\phi(\phi(S))=S\),所以它把所有子集配成不相交的二元对。
  • 改变奇偶:\(|\phi(S)|=|S|\pm 1\),因此“偶 ↔ 奇”。
  • 无不动点:不存在 \(S\) 使 \(\phi(S)=S\)(因为总在翻转 \(P\))。

\(\phi\) 是自反双射且无不动点,并且把“偶大小子集”双射到“奇大小子集”。于是两类子集数量相等。再用总数 \(2^n\),得各为 \(2^{n-1}\)
(这里要求 \(n\ge 1\);当 \(n=0\) 时只有空集,偶类为 1,奇类为 0)。

于是“偶大小子集”和“奇大小子集”一一对应,数量相等。两类合在一起是 \(2^n\),所以各自都是 \(2^{n-1}\)

\[\sum_{k\ \text{偶}}\binom{n}{k}=\sum_{k\ \text{奇}}\binom{n}{k}=2^{n-1}. \]

四、直观例子(\(n=3\),全集 \(\{1,2,3\}\),取 \(P=1\)

子集与配对:

  • \(\varnothing \leftrightarrow \{1\}\)(大小 0 ↔ 1)
  • \(\{2\} \leftrightarrow \{1,2\}\)(1 ↔ 2)
  • \(\{3\} \leftrightarrow \{1,3\}\)(1 ↔ 2)
  • \(\{2,3\} \leftrightarrow \{1,2,3\}\)(2 ↔ 3)

偶与奇严格成对,所以偶数大小有 4 个,奇数大小也有 4 个,各为 \(2^{3-1}=4\)

五、反转-配对模板(aka 符号翻转/反演套路)
  • 选一个可“翻转”的局部属性(比如是否包含固定元素 P,或是否左乘一个固定换位 τ)。
  • 定义映射 φ:执行一次翻转。证明两点:
    • 自反:φ(φ(x))=x(于是天然成“成对”结构)。
    • 无不动点:φ(x)≠x(确保不会把某个元素配到自己)。
  • 说明翻转会改变你关心的“二值属性”(奇↔偶、正↔负、含 P ↔ 不含 P)。
  • 结论:
    • 不带权计数:两类元素“成双成对”,所以数量相等。
    • 带符号权重:一对里的权重相反,求和彼此抵消为 0。
六、扩展例题
  1. 子集奇偶对半
  • 取全集 [n] 与固定元素 P,φ(S)=S△{P}。大小 ±1,奇偶互换;双射配对 ⇒ 奇偶各 2^{n-1}。
  1. 置换的偶奇对半
  • 在 S_n 里取固定换位 τ(如交换 1 与 2),φ(π)=τ∘π。换位改变置换的奇偶性;且 φ 的平方是恒等。因此偶置换与奇置换数量相同。

【回答】第一个问题:

\(C(n,k)\) 的含义为选取所有大小为 \(n\) 的全集 \(U\) 的大小为 \(k\) 的子集个数。

那么在求和的过程中,偶数大小子集为正,奇数为负;

考虑定义关于元素 \(P\) 函数 \(φ(S)\) 表示取 \(S \triangle {P}\),那么具有以下性质:

\[\varphi(S) \neq S \\ \varphi(\varphi(S)) = S \\ |\varphi(S)| = |S| \pm 1 \]

这代表构成了奇子集和偶子集的双射,他们个数相等。

所以

\[\mathrm{ans} = \sum_{k 偶} C(n,k) - \sum_{k奇}C(n,k) = 0 \]

证毕。

复习

  • 两大原则
    • 加法原理:互斥分类相加;乘法原理:路径唯一性相乘。
  • 排列与组合
    • \(A(n,k)\) 有序/分角色;\(C(n,k)\) 无序/不分角色;\(A(n,k)=C(n,k)\cdot k!\)
  • 经典恒等式与理解
    • 帕斯卡:按“是否含某元素”分类。
    • 二项式:01 选择 + 合并同类项。
    • Vandermonde:分块选择 + 卷积。
    • 奇偶各半:翻转固定元素的配对双射。
    • 标记法:\(kC(n,k)=nC(n-1,k-1)\),先选组再标记 vs 先标记再补齐。
posted @ 2025-08-11 18:56  Firsry  阅读(34)  评论(0)    收藏  举报