盒子与小球-复习

本文的盒子有 n 个,小球有 m

盒子不同,小球不同,盒子内小球数量无限制

对于第 i 个球,有 n 个可选盒子。所以答案就是 nm

盒子不同,小球不同,盒子至多装一个小球

对于第 i 个球,可以选择 ni+1 个盒子,因为别的盒子被之前的小球选过了。

答案就是 i=1m(ni+1)

盒子不同,小球不同,盒子至少装一个小球

至少问题,考虑二项式反演。

对于两个函数 f,g ,如果 f(n)=i=1nCnigi

可以推出 g(n)=i=0nCni(1)nifi

对于本题而言,我们定义 f(n,m) 表示 n 个盒子,m 个小球,盒子非空的情况方案数; g(n,m) 表示 n 个盒子, m 个小球,盒子随意的方案数。对于 g(n,m) 我们是好求的, nm 而已;但是

g(n,m)=i=0nCnif(i,m)

可以得到

f(n,m)=i=0nCni(1)nig(i,m)=i=0nCni(1)niim

盒子相同,小球不同,盒子数量无限制

考虑第二类斯特林数 S(n,m) 表示 n 个不同的元素,放入 m 个相同的集合的方案数。

两种求法:

S(n,m)=f(m,n)m!

f(m,n) 是我们上文定义的函数,该做法后续可以使用 NTT 优化,在较短的时间内求出一行的数。

S(n,m)=S(n1,m1)+S(n,m1)×m

S(n1,m1) 表示这个小球放进了独立的一个集合,S(n,m1) 表示这个小球插入了 n 个集合中的一个。

盒子相同,小球不同,每一个盒子至多装一球

判断 m,n 大小关系就可以了。

盒子相同,小球不同,每一个盒子至少装一球

斯特林数定义,不多讲了。

盒子不同,小球相同,每一个盒子无限制

本质上就是求方程 x1+x2+...+xn=m 的非负整数解。

这个就是经典的插板,Cn+m1n1

盒子不同,小球相同,盒子至多放一球

Cnm

盒子不同,小球相同,盒子至少放一球

Cn1m1

posted @   Diavolo-Kuang  阅读(26)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示