当前位置: 首页 > news >正文

7.2.1 十二重计数法

十二重计数法

\(n\) 个球,\(m\) 个盒子,将每个球装进盒子,并满足下面的条件,有多少种方案?

1. 球不同,盒不同

相当于每个球选择一个盒子放

答案为 \(m^n\)

2. 球不同,盒不同,每个盒子至多装一个

分两种情况讨论

  • \(n \le m\) ,对于每个球,找一个没有放过球的盒子放,答案为 \(m^{\underline{n}}\)
  • \(n > m\) ,这种情况无解,答案为 \(0\)

3. 球不同,盒不同,每个盒子至少放一个

还是分两种情况

  • \(n < m\) 无解

  • \(n \ge m\)

    至少放一个的条件不太好做,所以我们可以用 1 的答案减去不合法的方案数,这里用容斥即可

    \[\sum_{i = 0}^m (-1)^i \binom m i (m - i)^n \]


4. 球不同,盒同

考虑第二类斯特林数:\(S_{n,m}\) 表示 \(n\) 个不同的元素组成 \(m\) 个非空集合的方案数,枚举有多少个盒子装了球,答案为

\[\sum_{i = 1}^m S_{n, i} \]

5. 球不同,盒同,每个盒子至多放一个

答案为:\([n \le m]\)

6. 球不同,盒同,每个盒子至少放一个

  • \(n < m\) 无解
  • \(n \ge m\) 这个和第 3 个的区别在于盒子相同,于是可以用第 3 个的答案除去 \(m!\) 即可

\[\frac {\sum_{i = 0}^m (-1)^i \binom m i (m - i)^n} {m!} \]

关于第 4 个问题为什么不能用第一个问题的答案除去 \(m!\) 得到

第 6 个问题可以由第 3 个问题转化过来的主要原因是:6 & 3 中的盒子都有球,并且因为 6 中的盒子装了不同的球,所以 6 中的装球盒子也都是本质不同的。回过头来看 4 ,因为盒子可以为空,所以空盒子本质相同,因此无法通过 1 转化


后面这三个就是我们平时见得比较多的插板法了

7. 球相同,盒不同

\[\binom {n + m - 1} {m - 1} \]

8. 球相同,盒不同,每个盒子至多放一个

  • \(n > m\) 无解
  • \(n \le m\)\(\binom m n\)

9. 球相同,盒不同,每个盒子至少放一个

  • \(n < m\) 无解
  • \(n \ge m\)\(\binom {n - 1} {m - 1}\)

10. 球相同,盒相同

\(p_{n,m}\) 表示“划分数”——即将 \(n\) 划分成 \(m\) 个自然数的可重集的方案数,那么我们的答案就是 \(p_{n,m}\)

经典 \(O(n^2)\)\(dp\)

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

11. 球相同,盒相同,每个盒子至多放一个

这个就和前面的那个是一样的 \([n \le m]\) ,因为盒子相同的话,放哪个盒子都是一样的,不论球是否相同

12. 球相同,盒相同,每个盒子至少放一个

  • \(n < m\) 无解

  • \(n \ge m\)

    考虑将上面划分数中的自然数变成正整数,先强制每个盒子放一个球,答案即为 \(p_{n - m,m}\)

http://www.aitangshan.cn/news/808.html

相关文章:

  • (自适应手机端)驾校网站模板 驾照考证网站源码下载
  • 让sql service 只有只读权限
  • 【小白学算法】IDA*搜索算法超详细解析+例题[洛谷]P2324 [SCOI2005] 骑士精神
  • MyEMS开源能源管理系统:双碳时代的能源革命引擎
  • 儿童饮食
  • (PC+WAP)油漆涂料网站模板 家装网站源码下载
  • 开源能源管理系统应用前景:以 MyEMS 为例
  • 国产化Word处理控件Spire.Doc教程:如何用 Python 统计 Word 文档中的词频
  • 工业相机终极指南:驱动现代智能制造的核心“慧眼”
  • 题解:P6976 [NEERC 2015] Distance on Triangulation
  • Typora 1.9.5 已激活版本
  • 3D文档控件Aspose.3D实用教程:在 C# 中将 3MF 文件转换为 STL
  • 测试用例怎么写?工具有哪些?
  • SVN 清理失败问题
  • (PC+WAP)红色破碎设备网站模板 通用机械设备网站源码下载
  • 解决 `/usr/bin/ld: cannot find -lstdc++` 链接错误
  • 需求评审时,如何让开发主动说“这个用例写得好”?
  • Flutter SizeTransition:让你的UI动画更加丝滑
  • Flask 核心知识点
  • websocket路由封装示例
  • 2025年Python 3.12.0软件包安装使用指南
  • ESP32 + INMP441 + MAX98357A
  • Windows Server 2012虚拟机 时间同步不生效
  • Jackknife
  • php 图片清理工具web版
  • 题解:洛谷 P5997 [PA 2014] Pakowanie
  • 【CAPL】自定义函数的四种类型
  • KubeSphere闭源风波下,Casibase容器云为何成为用户更迫切的需求?
  • 使用类正则语法创建spaCy匹配模式
  • (自适应手机端)水处理设备网站模板 净水设备网站源码下载