Updating....
这几个玩意儿要记的东西太多太乱所以写blog整理一下
虽然蒯的成分会比较多全部
我居然开始记得写blog了??

第一类

这里讨论的是无符号类型的。
OEIS编号A130534

表示方法

\(s(n,m)\)或者\(\begin{bmatrix}n \\ m\end{bmatrix}\)
注意前者是小写s

意义

\(n\)个元素的项目分作\(m\)个非空环排列的方法数目

求法

递归求解法
\[\begin{bmatrix}n\\m\end{bmatrix}=\begin{bmatrix}n-1\\m-1\end{bmatrix}+(n-1)\begin{bmatrix}n-1\\m\end{bmatrix}\]
这个就是说新建一个环排列或者插入已有的环排列
可怕 这很\(O(n^2)\)

各种性质

\(\begin{bmatrix}n\\1\end{bmatrix}=(n-1)!\)
\(\begin{bmatrix}n\\2\end{bmatrix}=(n-1)!\times\sum_{i=1}^{n-1}\frac 1 i\)
\(\sum_{i=0}^n \begin{bmatrix}n\\i\end{bmatrix}=n!\)
\(\begin{bmatrix}n\\n-1\end{bmatrix}=\binom{n}{2}\)
这里就不给出证明了
别的地方都有
也挺好记好想的
maybe

第二类

OEIS编号A008277

表示方法

\(S(n,m)\)或者\(\left\{\begin{matrix}n \\ m\end{matrix}\right\}\)
当然这里是大写S

意义

\(n\)个元素的集定义\(m\)个等价类的方法数目
。。。wiki害人
就是从环排列变成集合划分了
当然也要保证非空

求法

递归求解法
\[\begin{Bmatrix}n\\m\end{Bmatrix}=\begin{Bmatrix}n-1\\m-1\end{Bmatrix}+m\begin{Bmatrix}n-1\\m\end{Bmatrix}\]
同样也可以解释,新建or插入已有的
再次\(O(n^2)\)??别啊
幸好这玩意儿能搞容斥,通项就有了
\[\begin{Bmatrix}n\\m\end{Bmatrix}=\frac{1}{m!}\sum\limits_{k=0}^{m}(-1)^k\binom{m}{k}(m-k)^n\]
\(O(n)\)求解不是梦
好吧只求一个用这个会快
最重要的是这个能卷,也好搞些别的???
稍微整理一下
\[\left\{\begin{matrix}n\\m\end{matrix}\right\}=\sum_{k=0}^m\frac{(-1)^k}{k!}\frac{(m-k)^n}{(m-k)!}\]
就很舒服

Stirling 反演

两个柿子挺好记
但我暂时还搞不清具体是干嘛的。。。
\[f(x) = \sum_{i=0}^x \begin{Bmatrix}x\\i\end{Bmatrix} g(i) \Leftrightarrow g(x) = \sum_{i=0}^x (-1) ^ {x - i}\begin{bmatrix}x\\i\end{bmatrix} f(i)\]
\[f(x) = \sum_{i=0}^x \begin{bmatrix}x\\i\end{bmatrix} g(i) \Leftrightarrow g(x) = \sum_{i=0}^x (-1) ^ {x - i}\begin{Bmatrix}x\\i\end{Bmatrix} f(i)\]

Bell数

OEIS编号A000110
就是把第二类stirling数的集合划分个数限制去掉了
只限制了基数
也就是
\[B_n=\sum_{i=0}^n\begin{Bmatrix}n\\i\end{Bmatrix}\]
当然也可以直接\(O(n)\)递推
\[B_{n+1}=\sum_{k=0}^n\binom{n}{k}B_{k}\]

参考

%%%
https://www.cnblogs.com/NaVi-Awson/p/9242645.html
https://www.cnblogs.com/ezoiLZH/p/9424911.html
https://www.cnblogs.com/owenyu/p/6724661.html
https://blog.csdn.net/winycg/article/details/70233717

Stirling数笔记的更多相关文章

  1. lightOJ 1326 Race(第二类Stirling数)

    题目链接:http://lightoj.com/volume_showproblem.php?problem=1326 题意:有n匹马赛跑.问有多少种不同的排名结果.可以有多匹马的排名相同. 思路:排 ...

  2. 斯特灵数 (Stirling数)

    @维基百科 在组合数学,Stirling数可指两类数,都是由18世纪数学家James Stirling提出的. 第一类 s(4,2)=11 第一类Stirling数是有正负的,其绝对值是个元素的项目分 ...

  3. hdu 4372 第一类stirling数的应用/。。。好题

    /** 大意: 给定一系列楼房,都在一条水平线上,高度从1到n,从左侧看能看到f个, 从右侧看,能看到b个,问有多少种这样的序列.. 思路: 因为肯定能看到最高的,,那我们先假定最高的楼房位置确定,那 ...

  4. HDU 3625 Examining the Rooms:第一类stirling数

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3625 题意: 有n个房间,每个房间里放着一把钥匙,对应能开1到n号房间的门. 除了1号门,你可以踹开任 ...

  5. HDU 4372 Count the Buildings:第一类Stirling数

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4372 题意: 有n栋高楼横着排成一排,各自的高度为1到n的一个排列. 从左边看可以看到f栋楼,从右边看 ...

  6. 整理一点与排列组合有关的问题[组合数 Stirling数 Catalan数]

    都是数学题 思维最重要,什么什么数都没用,DP直接乱搞(雾.. 参考LH课件,以及资料:http://daybreakcx.is-programmer.com/posts/17315.html 做到有 ...

  7. [总结] 第二类Stirling数

    上一道例题 我们来介绍第二类Stirling数 定义 第二类Stirling数实际上是集合的一个拆分,表示将n个不同的元素拆分成m个集合的方案数,记为 或者 .和第一类Stirling数不同的是,集合 ...

  8. Bell(hdu4767+矩阵+中国剩余定理+bell数+Stirling数+欧几里德)

    Bell Time Limit:3000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit Status  ...

  9. 贝尔数(来自维基百科)& Stirling数

    贝尔数   贝尔数以埃里克·坦普尔·贝尔(Eric Temple Bell)为名,是组合数学中的一组整数数列,开首是(OEIS的A000110数列):   Bell Number Bn是基数为n的集合 ...

随机推荐

  1. HTMLTestRunner解决UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe5 in position 108: ordinal not in range(128)

    其中HTML和数据库都是设置成utf-8格式编码,插入到数据库中是正确的,但是当读取出来的时候就会出错,原因就是python的str默认是ascii编码,和unicode编码冲突,就会报这个标题错误. ...

  2. 单源最短路——dijkstra算法

    Dijkstra算法 1.定义概览 Dijkstra(迪杰斯特拉)算法是典型的单源最短路径算法,用于计算一个节点到其他所有节点的最短路径.主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止. 问 ...

  3. 域名加www与不加www不一样结果的解决办法

    有些浏览器域名访问加www 与不加www出现的页面不一样.在aj请求的时候也不同.firefox与google新版本的都会自动加上www. 比如 访问haitaohua.com,但aj请求的时候是带w ...

  4. TCP系列16—重传—6、基础快速重传(Fast Retransmit)

    一.快速重传介绍 按照TCP协议,RTO超时重传是一个非常重要的事件,当RTO超时的时候,TCP会同时通过两种方式非常谨慎的降低发送数据包的速率,一种是基于拥塞控制削减发送窗口的大小,另外一个是通过指 ...

  5. 这些JavaScript编程黑科技,装逼指南,高逼格代码,让你惊叹不已

    Javascript是一门很吊的语言,我可能学了假的JavaScript,哈哈,大家还有什么推荐的,补充送那啥邀请码. 本文秉承着:你看不懂是你SB,我写的代码就要牛逼. 1.单行写一个评级组件 &q ...

  6. 微信小程序 功能函数 计时器

    let lovetime = setInterval(function () { let str = '(' + n + ')' + '重新获取' that.setData({ getText2: s ...

  7. Python对字符串进行MD5加密处理

    import hashlibimport sysreload(sys)sys.setdefaultencoding('utf-8') m = hashlib.md5()m.update('123456 ...

  8. [C/C++] C++类对象创建问题

    CSomething a();// 没有创建对象,这里不是使用默认构造函数,而是定义了一个函数,在C++ Primer393页中有说明. CSomething b(2);//使用一个参数的构造函数,创 ...

  9. 命名空间(namespace)// 友元函数

    17.2.命名空间 命名空间(namespace)为防止名字冲突提供了更加可控的机制.命名空间能够划分全局命名空间,这样使用独立开发的库更加容易了.一个命名空间就是一个作用域,通过在命名空间内部定义库 ...

  10. 【bzoj1596】[Usaco2008 Jan]电话网络 树形dp

    题目描述 Farmer John决定为他的所有奶牛都配备手机,以此鼓励她们互相交流.不过,为此FJ必须在奶牛们居住的N(1 <= N <= 10,000)块草地中选一些建上无线电通讯塔,来 ...