📜  数学 |广义 PnC 集 1(1)

📅  最后修改于: 2023-12-03 15:39:57.597000             🧑  作者: Mango

数学 | 广义 PnC 集 1

介绍

广义 PnC (Permutations and Combinations) 可以理解为对于一个集合中的 n 个元素,从中取出 m 个元素,共有多少种取法。这里的元素可以是不同的,也可以是相同的。

常见的 PnC 公式为:

$$ \begin{aligned} C_n^m &= \frac{n!}{m!(n-m)!} \ P_n^m &= \frac{n!}{(n-m)!} \end{aligned} $$

其中 $C_n^m$ 表示从 n 个元素中取出 m 个元素的组合数, $P_n^m$ 表示从 n 个元素中取出 m 个元素的排列数。

但是,在现实生活中,有时候我们需要将这些元素划分成不同的组别,每个组别都可以取出其中的若干元素,这时候就需要用到广义 PnC。

定义

假设有 $k$ 个不同的集合 $S_1, S_2, \cdots, S_k$,对于第 $i$ 个集合 $S_i$,其中有 $n_i$ 个元素,那么从这 $k$ 个集合中各取出 $m_i (0 \leq m_i \leq n_i)$ 个元素,构成一个集合 $T$。

例如,假设有三个集合 $S_1 = {A, B}$,$S_2 = {C, D, E}$,$S_3 = {F, G}$,现在需要从这三个集合中分别取出 1, 2, 1 个元素,构成一个新的集合 $T$,那么 $T$ 可以有如下 ${2 \choose 1} \times {3 \choose 2} \times {2 \choose 1} = 12$ 种不同的取法(即每个集合选择哪些元素):

  • $(A, C, F)$
  • $(A, C, G)$
  • $(A, D, F)$
  • $(A, D, G)$
  • $(A, E, F)$
  • $(A, E, G)$
  • $(B, C, F)$
  • $(B, C, G)$
  • $(B, D, F)$
  • $(B, D, G)$
  • $(B, E, F)$
  • $(B, E, G)$
符号表示法

我们可以用 $\langle m_i \rangle_{i=1}^k$ 来表示一个集合的取法:

$$ \langle m_i \rangle_{i=1}^k = {x_i \in S_i | x_i \text{的数量为} m_i} $$

例如,如果 $\langle m_1, m_2, m_3 \rangle = \langle 1, 2, 1 \rangle$,则表示从 $S_1, S_2, S_3$ 中分别取出 1, 2, 1 个元素。

命题

给定 $k$ 个集合 $S_1, S_2, \cdots, S_k$,对于第 $i$ 个集合 $S_i$,其中有 $n_i$ 个元素,从这 $k$ 个集合中分别取出 $m_i (0 \leq m_i \leq n_i)$ 个元素,共有多少种取法。

证明

考虑每个集合 $S_i$ 如何取数:

  • 第 $i$ 个集合的第一个元素,有 $n_i$ 种取法;
  • 第 $i$ 个集合的第二个元素,有 $n_i - m_i$ 种取法;
  • 第 $i$ 个集合的第三个元素,有 $n_i - m_i - 1$ 种取法......
  • 最后一个元素,有 $n_i - m_i - (k - i)$ 种取法。

所以,对于第 $i$ 个集合,一共有 ${n_i \choose m_i}$ 种取法。

最终,由于这 $k$ 个集合是互相独立的,所以总共的取法是它们的积:

$$ \prod_{i=1}^k {n_i \choose m_i} $$

这里的 ${n_i \choose m_i}$ 表示从 $S_i$ 中取出 $m_i$ 个元素的组合数。

应用

广义 PnC 在组合计数中有广泛的应用,比如:

  • 可以用来计算相同元素个数的排列数,例如将 AABBCCDD 里的字母排成一个长度为 8 的字符串的总个数;
  • 可以用来计算多重集合的排列数,例如从 AAABBCCCC 中取出 3 个元素,可以有多少种取法;
  • 可以用来计算多重集合的组合数,例如从 AAABBCCCC 中取出 3 个元素,可以有多少种取法,且不考虑顺序。