注意这里讲的是斯特林数而非斯特林公式。

斯特林数分两类:第一类斯特林数 和 第二类斯特林数。 分别记为

首先描述第二类斯特林数

描述为:将一个有n件物品的集合划分成k个非空子集的方法数。

比如集合{1,2,3,4}有以下划分:

{1,2,3}U{4}   {1,2,4}U{3}   {1,3,4}U{2}   {2,3,4}U{1}  {1,2}U{3,4}   {1,3}U{2,4}  {1,4}U{2,3}.

7个这样的划分。

记为

那么有一下第二类斯特林数交给你计算。

根据定义,易得答案分别为:0,1,n,0.

之后考虑一个这样的式子

把一个集合划分为两个子集。

思路:

把最后一个元素拿出来。

这时有两种可能。1:最后一个元素自成一个集合。2:最后一个元素和前面的集合中一个子集为一个元素。

这种思想不只是用在k = 2的时候。扩展到全部的k上。

原理不讲。一方面是为了自己将来看的时候能够自己思考。另一外方面其实和推导的方法差不多。

List:

表格数据确实重要。有时候Stiring Number 说不定是藏在题目中 你发现不了的。而你可以通过打表大胆猜测。

1 7 6 1

1 15 25 10 1

1 31 90 65 15 1

值得记住。

再是描述第一类斯特林数

意义:轮换。即n个元素能够分成k个轮换。

轮换:即新的轮换不能通过旧的轮换进行数组移位得到。

[A,B,C,D] = [B,C,D,A] = [C,D,A,B] = [D,A,B,C].

上述都是表示同一个轮换。

而[A,B,C] 和 [A,C,B] 是两个不同的轮换。

比如n = 4. k=2时。

有11个轮换:

[1,2,3][4]  [1,2,4][3]  [1,3,4][2]  [2,3,4][1]

[1,3,2][4]  [1,4,2][3]  [1,4,3][2]  [2,4,3][1]

[1,2][3,4]  [1,3][2,4]  [1,4][2,3]

记为

另外对于n>0

这个式子易得。 n个元素全排列。对于一种排列有另外n-1种可以通过数组移位得到。所以归为1种。

即n!/n = (n-1)!.

另外还有以下性质。

注意是两类斯特林数的关系。

同样地,第一类斯特林数也有递推式。

重点是那个(n-1)的理解。

举个例子。

[1,2,3] 中添加 4 构成[1,2,3,4]

[2,3,1] 中添加 4 构成[2,3,1,4]

[3,1,2] 中添加 4 构成[3,1,2,4]

而前面的轮换都是属于一个轮换。而构成了3个不同的轮换。所以一定不像第二类斯特林数一样是k.

而这种情况可以发现。前面集合中的每个数都出现一次在集合的第一个位置。所以是n-1个。

List:

2 3 1

6 11 6 1

24 50 35 10 1

值得记在脑中。

另外对于轮换。我们可以和排列对应起来。

1 2 3 4 5 6 7 8 9

3 8 4 7 2 9 1 5 6

1->3 3->4 4->7 7->1 为一个轮换 [1,3,4,7]

2->8 8->5 5->2    为一个轮换 [2,8,5]

6->9 9->6                  为一个轮换 [6,9]

对于任意一个排列总是有一个轮换是对应的。由此我们可以列出。

另外在具体数学的后面有一个这样联系第一类和第二类斯特林数的式子

当然中间在具体数学里还有很多精彩美妙绝伦的证明以及推导。还有公式。具体就不列出来了。

just an introduction.

具体数学斯特林数-----致敬Kunth的更多相关文章

  1. 具体数学数论章-----致敬Kunth

    整除性(divisible): 引入了代表整除性. m\n (m|n) 表示m整除n.注意这里的整除.表示的是n = km(k为整数). 在整除性这里.m必须是个正数.也许你可以描述n 是 m 的k倍 ...

  2. 数学杂烩总结(多项式/形式幂级数+FWT+特征多项式+生成函数+斯特林数+二次剩余+单位根反演+置换群)

    数学杂烩总结(多项式/形式幂级数+FWT+特征多项式+生成函数+斯特林数+二次剩余+单位根反演+置换群) 因为不会做目录所以请善用ctrl+F 本来想的是笔记之类的,写着写着就变成了资源整理 一些有的 ...

  3. [BJOI2019]勘破神机(斯特林数+二项式定理+数学)

    题意:f[i],g[i]分别表示用1*2的骨牌铺2*n和3*n网格的方案数,求ΣC(f(i),k)和ΣC(g(i),k),对998244353取模,其中l<=i<=r,1<=l< ...

  4. [题解] LOJ 3300 洛谷 P6620 [省选联考 2020 A 卷] 组合数问题 数学,第二类斯特林数,下降幂

    题目 题目里要求的是: \[\sum_{k=0}^n f(k) \times X^k \times \binom nk \] 这里面出现了给定的多项式,还有组合数,这种题目的套路就是先把给定的普通多项 ...

  5. bzoj5093图的价值:多项式,斯特林数(二项式反演)

    Description “简单无向图”是指无重边.无自环的无向图(不一定连通). 一个带标号的图的价值定义为每个点度数的k次方的和. 给定n和k,请计算所有n个点的带标号的简单无向图的价值之和. 因为 ...

  6. hdu 4045 2011北京赛区网络赛F 组合数+斯特林数 ***

    插板法基础知识 斯特林数见百科 #include<iostream> #include<cmath> #include<cstdio> #include<cs ...

  7. HDU 4045 Machine scheduling (组合数学-斯特林数,组合数学-排列组合)

    Machine scheduling Time Limit: 5000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Other ...

  8. 【HDU 4372】 Count the Buildings (第一类斯特林数)

    Count the Buildings Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Othe ...

  9. dp 斯特林数 HDU2512一卡通大冒险

    这道题其实就是斯特林数,找不同的集合,一共有多少中组法,递推式就是dp[n][k] = dp[n - 1][k - 1] + k * dp[n - 1][k]; 这个式子可以这么解释,dp[n][k] ...

随机推荐

  1. SaltStack入门篇(五)之salt-ssh的使用以及LAMP状态设计部署

    1.salt-ssh的使用 官方文档:https://docs.saltstack.com/en/2016.11/topics/ssh/index.html ()安装salt-ssh [root@li ...

  2. 【JUC源码解析】PriorityBlockingQueue

    简介 基于数据结构堆实现的线程安全的无界队列,这个堆的内存结构是数组,结合了数组和二叉树的特点. 堆 以下内容参考<编程珠玑>和<算法导论>有关堆的章节. 数据结构 堆是用来表 ...

  3. Introduction to Locking in SQL Server

    Locking is a major part of every RDBMS and is important to know about. It is a database functionalit ...

  4. 【一】H.264/MPEG-4 Part 10 White Paper 翻译之 Overview of H.264

    翻译版权所有,转载请注明出处~ xzrch@2018.09.14 ------------------------------------------------------------------- ...

  5. tomcat7以上的版本,400BadRequest

    出现此原因的解决办法其一,详情可见: https://www.cnblogs.com/dygrkf/p/9088370.html. 另一种解决方法,就是把url中不允许出现的字符编码,后台接收时再解码 ...

  6. 区块链技术:每位CEO都应了解

    区块链技术有可能成为一项广泛应用的突破性技术,像蒸汽机.电力或因特网那 样,改变整个社会和经济的运行方式. 对企业而言,信任至关重要.今天,我们基于信任,将钱存放在银行,通过电商企业 网购产品,并且依 ...

  7. selenium+python 搭建自动化环境

    一.以搭建windows平台为例 准备工具如下: 1)下载Python 2)安装,配置环境变量 3)安装selenium,通过pip安装,命令如下:  pip install selenium 方式二 ...

  8. python爬取淘宝华为手机

    import re from selenium import webdriver from selenium.common.exceptions import TimeoutException fro ...

  9. C#中的Split用法以及详解

    一.String.Split方法提供了如下6个重载函数: 名称 说明 String.Split (Char[]) 返回包含此实例中的子字符串(由指定 Char 数组的元素分隔)的 String 数组. ...

  10. 3D打印产业链全景图