欢迎来到双射原则 (Bijection Principle) 的世界!
在 H3 数学中,计数有时会让人觉得像是在数蜂群——一切都在变动,稍不留神就会数错。双射原则就是你的秘密武器。与其直接去数那些“困难”的问题,我们不如找一个更容易计算的“孪生”问题,并证明两者的结果数量完全相同。这正是组合推理的核心精神!
如果起初觉得这些概念有点抽象,也不用担心。我们将专注于它最著名的应用之一:隔板法 (Stars and Bars)。看完这些笔记后,你就能像专家一样,轻松地将相同的物品分配到不同的盒子里。
1. 到底什么是“双射”?
想象一下,你正在参加一场婚礼。你想知道椅子数量是否正好等于客人数量。你可以去数每一个客人,再数每一张椅子,但那样太麻烦了。相反地,你只需要等大家坐下来。如果每位客人都有且仅有一张椅子,而且没有椅子是空的,这就是一个双射 (bijection)。
在数学上,双射是一种规则,它将集合 A 的每一个元素与集合 B 的唯一一个元素配对,且没有遗漏。因为它们被完美地配对了,所以我们可以断定:
集合 A 的大小 = 集合 B 的大小
双射原则指出:若要计算集合 A,请找到一个较易计算的集合 B,并建立两者之间的双射关系。
快速复习:预备概念
在我们继续之前,先理清两个常让学生混淆的术语:
• 不可分辨(相同)物品:例如 10 枚一模一样的金币。如果你交换其中两枚金币,情况并没有改变。
• 可分辨(不同)盒子:例如 3 个不同的人(Alice、Bob 和 Charlie)。谁拿到哪枚金币是有差别的!
2. 隔板法 (Stars and Bars)
这是我们在 H3 中应用双射原则最常见的方法。我们用它来解决这个具体问题:将 \(n\) 个相同的物品分配到 \(r\) 个不同的盒子里,有多少种方法?
类比:糖果店
想象你有 7 个一模一样的棒棒糖(星号,Stars),要分给 3 个不同的孩子(隔板,Bars)。
为了将棒棒糖分成 3 组,我们不需要 3 个隔板;我们只需要 2 个隔板。
如果我们这样放置隔板:\(* * | * * * | * *\),意思就是:
• 第一个孩子得到 2 个棒棒糖。
• 第二个孩子得到 3 个棒棒糖。
• 第三个孩子得到 2 个棒棒糖。
你知道吗?“隔板”的数量永远比盒子数量少一个。如果你有 \(r\) 个盒子,你就需要 \(r - 1\) 个隔板。
3. 情境一:盒子可以为空 (\(x_i \ge 0\))
如果我们允许给孩子零个棒棒糖,那么隔板和棒棒糖可以以任何顺序排列。
例如:\(| * * * * * * * |\) 代表第二个孩子得到全部 7 个,而第一个和第三个孩子则得到零个。
分步计算
1. 确定物品数量:\(n\)(星号)。
2. 确定盒子数量:\(r\)。
3. 计算所需隔板数量:\(r - 1\)(隔板)。
4. 找出总共要排列的项目数量:\(n + (r - 1)\)。
5. 公式:我们从总位置中选择隔板的位置:
\( \binom{n+r-1}{r-1} \) 或 \( \binom{n+r-1}{n} \)
例子:将 10 个相同的玻璃珠分到 4 个不同的袋子中。
• \(n = 10\)
• \(r = 4\),所以隔板数量 = \(4 - 1 = 3\)
• 总位置 = \(10 + 3 = 13\)
• 方法数 = \( \binom{13}{3} = \frac{13 \times 12 \times 11}{3 \times 2 \times 1} = 286 \)
重点总结:当物品相同且盒子不同时,请想到“隔板法”,并记住 \(r\) 个盒子只需要 \(r-1\) 个隔板!
4. 情境二:每个盒子至少要有一个 (\(x_i \ge 1\))
有时候题目会说“每个盒子都不能为空”。这其实更简单!
如果我们有 7 个棒棒糖和 3 个孩子,且每个人都必须至少得到一个,我们可以使用一个简单的技巧。
“预先派发”技巧
1. 先给每个孩子一个棒棒糖。
2. 现在你剩下 \(n - r\) 个棒棒糖可以自由分配。
3. 使用情境一的公式来计算剩下的棒棒糖。
另一种逻辑(间隙法):
想象 7 个星号排成一列:\(* \_ * \_ * \_ * \_ * \_ * \_ *\)
它们之间有 6 个间隙。为了分成 3 组,我们只需要选出 2 个间隙来放置隔板。
公式: \( \binom{n-1}{r-1} \)
例子:求 \(x_1 + x_2 + x_3 = 10\) 的正整数解数量。
• 这里 \(n = 10\),\(r = 3\)。
• 由于是正整数,\(x_i \ge 1\)。
• 方法数 = \( \binom{10-1}{3-1} = \binom{9}{2} = 36 \)。
5. 避免常见错误
• 搞混 \(n\) 和 \(r\):随时问自己:“什么东西正在被分配(星号)?”以及“谁/什么在接收它们(盒子)?”
• “至少 1 个”的情况用错公式:如果题目说“非负 (non-negative)”,使用 \(n+r-1\) 的公式。如果题目说“正整数 (positive)”或“至少 1 个”,使用 \(n-1\) 的公式。
• 遗忘双射:记住,我们计算的是星号与隔板的排列组合,因为这些序列与填充盒子的方法之间存在一一对应的关系。
6. 总结快速复习
场景:将 \(n\) 个相同的物品分配到 \(r\) 个不同的盒子中。
方法:隔板法。
• 若盒子可以为空:方法数 = \( \binom{n+r-1}{r-1} \)
• 若盒子不能为空:方法数 = \( \binom{n-1}{r-1} \)
• 为什么有效:我们在物品的分配方式与符号序列(\(*\) 与 \(|\))之间建立了双射。
继续练习吧!组合学的关键在于看出规律。一旦你在题目中“看见”了星号和隔板,数学就会变成简单的运算。