排列组合基础方法

排列组合基础方法:

定义就不说了。

方法:

  1. 定序问题:缩倍法。

    \(n\) 个物品,其中 \(m\) 个顺序一定(不一定相连): \(\frac{A_n^n}{A_m^m}\) (有时 \(m\) 相同也视为定序,有多个 \(m\) 就除以 \(\prod A_{m_i}^{m_i}\)

  2. 相邻、小团体问题:捆绑法。

    \(n\) 个物品,其中 \(m(m<n)\) 个要求相邻: \(A_{n-m}^{n-m}\times A_m^m\) (将 \(m\) 看做整体,别忘了 \(\times A_m^m\) )。

  3. 等分 \(n\) 排:多排看做一排。

  4. 不相邻问题:插空法。

    \(n\) 个物品,其中 \(m\) 个不相邻(保证有解): \(A_{n-m}^{n-m}\times A_{n-m+1}^{m}\)\(m\) 插进 \(n\) 的间距里)

  5. 有特殊要求先算特殊要求。

  6. 分物品:插板法。

    \(n\) 个物品分给 \(m\) 个人(保证有解):

    • 每人至少一个:\(C_{n-1}^{m-1}\) (在 \(n-1\) 个空里插 \(m-1\) 个板,使其分成 \(m\) 份,每份至少一个,直接插板)

    • 每人至少 \(k\) 个:\(C_{n-m(k-1)-1}^{m-1}\) (先每人份 \(k-1\) 个,在插板)

    • 可以有人没有:\(C_{n+m-1}^{m-1}\) (先从每人拿来一个,在插板)

  7. 对于个数不限的问题:

    经典的,从 n 种颜色的球中取出 \(m\) 个,每种颜色的球有无穷多个,求方案数。

    可以将个数无限的当成是盒,问题就变成了将 \(m\) 个球放进 \(n\) 个盒子里,每个盒子可以不放,求方案数,用插板法可解。

  8. 小球和盒的十二重组合:

    虽然和P5824 十二重计数法题一模一样,但非正解,只是将基础的部分方法写了(因为我不会生成函数、卷积……以后没准会补

    因为重点是简单的组合,所以会讲的很详细啰嗦

    \(n\) 个球,\(m\) 个盒

    • 球不相同,盒不相同,

      1. 无限制:显然是 \(n^m\)

      2. 最少放一个:考虑容斥

        • 容斥:

          \(g_k\)钦定\(k\) 个盒子不为空,\(f_k\) 表示恰好。

          则有

          \[g_k=k^n \]

          \[g_k=\sum\limits_{i=0}^{k}\dbinom{k}{i}f_i \]

          反演得

          \[\begin{aligned}f_m&=\sum\limits_{i=0}^{m}(-1)^{m-i}\dbinom{m}{i}g_i\\&=\sum\limits_{i=0}^{m}(-1)^{m-i}\dbinom{m}{i}i^n\end{aligned} \]

      3. 最多放一个:

        对于 \(n>m\) 显然为 \(0\)

        对于其他的,一个一个放置,为 \(m^{\underline{n}}\)

    • 球相同,盒不相同:

      插板,具体见上。

    • 球不相同,盒相同:

      1. 无限制:枚举非空盒的个数,答案为:

        \[\sum\limits_{i=1}^m\begin{Bmatrix}m\\i\end{Bmatrix} \]

      2. 最少放一个:就是 \(\begin{Bmatrix}n\\m\end{Bmatrix}\) 的定义。

        \(\begin{Bmatrix}n\\m\end{Bmatrix}\) 的求法:

        考虑球不相同,盒不相同的方案数 \(F\),在前面已经用容斥求过,发现 \(\begin{Bmatrix}n\\m\end{Bmatrix}=\frac{F}{m!}\),然后就可求了。

      3. 最多放一个:显然,当 \(n>m\) 时不存在,当 \(n\le m\) 时只有一种情况(其他可以排列获得。

    • 球相同,盒相同:

      1. 无限制:

        这个东西相当于是划分数。

        这里只提供 dp,不提供优化。

        \(dp_{i,j}\) 表示将 \(i\) 分成不超过 \(m\) 个数的和的方案数(就是划分数

        有显然转移:

        \[dp_{i,j}=dp_{i-j,j}+dp_{i,j-1} \]

        就是考虑全部加一或者是新分一个为 \(0\) 的数。

      2. 最少放一个:先将每个都放一个球即可。

      3. 最多放一个:显然是 \([n<=m]\)

posted @ 2023-08-10 07:44  xrlong  阅读(8)  评论(0编辑  收藏  举报