第二类斯特林数的推导

定义

S2(n,m)为,将n个有标记小球放入m个无差别盒子(无空盒)中的方案数。
乘上m!就是有差别盒子。

计算

由定义得递推式
S2(i,j)=S2(i1,j1)+S2(i1,j)j
这个式子用于O(n^2)计算n,n以内的所有斯特林数

若要求某一个S2(n,m),可推导通项公式
首先无视无空盒条件,放法有 mn
然后枚举有k个空盒,可得出多算的有
Ckm(mk)n
这要套个容斥,因为 (mk)n 并不保证这m-k个盒子中全是有的。

换句话说,设不保证无空盒的放法全集是S, Ai 表示S中第i个盒子为空的放法子集.
减去 C1m(m1)n 即为 减去 Ai
显然我们多减去了 AiAj 这一类放法. 即有i,j同时为空的放法
因此要加回 AiAj ,但又多加了 AiAjAk ,以此类推,理解一下.


S2(n,m)=1m!mk=0Ckm(mk)n(1)k
那个1/m!是将m个盒子变为无差别. (乘上就是有差别咯)
O(mlogn) 计算某一个s2.

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值