常见组合计数问题汇总

① $a_1 + a_2 + dots + a_n = r$ 的解数。
$a_i, r in mathbb{Z}_{ge 0}$

挡板法。$inom{n + r - 1}{r}$

② $a_1 + a_2 + dots + a_n le r$ 的解数。
$a_i, r in mathbb{Z}_{ge 0}$

$a_1 + a_2 + dots + a_n le r$ 与 $a_1 + a_2 + dots + a_n + a_{n + 1} = r$ 的解一一对应。
$inom{n+r}{r}$

③ 错位排列数
满足递推 $d_n = (n - 1) (d_{n - 1} + d_{n - 2})$
$d_1 = 0$,$d_2 = 1$ 。

④ $a_1 + a_2 + dots + a_n le r$ 且 $a_i le k$ 的解数。
容斥原理。
令集合 $A$ 表示所有满足 $a_1 + a_2 + dots + a_n le r$ 的序列的集合。
令集合 $A_i$ 表示满足 $a_1 + a_2 + dots + a_n le r$ 且 $a_i > k$ 的序列的集合。
对于 $T sse {1, 2, dots, n}$,定义 $A_T = cap_{i in T} A_i$,则 $|A_T| = inom{n + r - |T|(k+1)}{r - |T|(k+1)}$。
根据容斥原理,答案是
$sum_{T in {1, dots, n}} (-1)^{|T|} |A_T| = sum_{i = 0}^{n} (-1)^i inom{n}{i}inom{n + r - i(k+1)}{r - i(k+1)}$。

原文地址:https://www.cnblogs.com/Patt/p/11817441.html