You are god again!|

definieren

园龄:3年1个月粉丝:7关注:4

2024-05-24 17:32阅读: 23评论: 0推荐: 0

十二重计数法

n 个球,m 个盒子,求在一定限制条件下把小球放入盒子的方案数。

1. 球之间互相区分,盒子之间互相区分。

每个球能放 m 个盒子,显然是:

mn

2. 球之间互相区分,盒子之间互相区分,每个盒子至多放一个球。

先选出装了球的盒子,然后排列球的顺序。
答案为:

(mn)n!=mn_

3. 球之间互相区分,盒子之间互相区分,每个盒子至少放一个球。

容斥,答案为:

i=0n(1)i(mi)(mi)n

4. 球之间不互相区分,盒子之间互相区分。

插板,答案为:

(n+m1m1)

5. 球之间不互相区分,盒子之间互相区分,每个盒子至多放一个球。

答案为:

(mn)

6. 球之间不互相区分,盒子之间互相区分,每个盒子至少放一个球。

可以先每个盒子都放一个,然后就变成了 4.。
答案为:

(n1m1)

7. 球之间互相区分,盒子之间不互相区分。

发现每个盒子只由它装了哪些球来区分,没有装球的盒子是没有区别的。
所以可以先枚举装了球的盒子数,答案就是斯特林子集数的行前缀和:

i=1m{ni}

8. 球之间互相区分,盒子之间不互相区分,每个盒子至多放一个球。

显然答案为:

[nm]

9. 球之间互相区分,盒子之间不互相区分,每个盒子至少放一个球。

斯特林子集数,答案为:

{nm}

10. 球之间不互相区分,盒子之间不互相区分。

分拆数。

转置一下,问题就从 有 m 个盒子,每个盒子中放任意个球 变成了 有任意个非空盒子,每个盒子可以放至多 m 个球。
所以答案为:

[zn]i=1m11zi

可以通过先 lnexp 的方式快速求出。

11. 球之间不互相区分,盒子之间不互相区分,每个盒子至多放一个球。

答案为:

[nm]

12. 球之间不互相区分,盒子之间不互相区分,每个盒子至少放一个球。

每个盒子先放一个球后就变成了 10.。
答案为:

[znm]i=1m11zi

posted @   definieren  阅读(23)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起