这个问题似乎有很多种求法,但感觉上第二类Strling数的做法是最方便的。


问题

求下面这个式子:

∑i=0nik\sum_{i=0}^n i^ki=0∑n​ik

nnn的范围可以很大。


第二类Strling数

第二类Strling数记作S(n,m)S(n,m)S(n,m)、SnmS_n^mSnm​。

定义:将nnn个相同的球放在mmm个不同的箱子里的方案数(其中的每一个箱子至少有一个球)。

很容易推出一个式子:Snm=Sn−1m−1+mSn−1mS_n^m=S_{n-1}^{m-1}+mS_{n-1}^mSnm​=Sn−1m−1​+mSn−1m​。不解释。

有个通项公式,但是我不会推……不过在处理这个问题的时候用不着。


一个性质

ak=∑i=0kSkii!Caia^k=\sum_{i=0}^kS_k^i i! C_a^iak=i=0∑k​Ski​i!Cai​

如果直接理性地证明可能不容易,所以在这里通过它的定义来推理一下:

对于等式左边,相当于kkk个不同的球放在aaa个不同的箱子里。

对于等式右边,先枚举非空箱子的个数,SkiS_k^iSki​表示kkk个不同的球放在iii个相同的箱子里。乘上i!i!i!相当于放在不同的箱子里,再乘上非空箱子的选法CaiC_a^iCai​。

当然这条式子也可以化成:

∑i=0kSki∏j=a−i+1aj\sum_{i=0}^kS_k^i \prod_{j=a-i+1}^a ji=0∑k​Ski​j=a−i+1∏a​j


推理

先把结论放在前面:

∑i=0nik=∑i=0kSki∏j=n−i+1n+1ji+1\sum_{i=0}^n i^k=\sum_{i=0}^k\frac{S_k^i\prod_{j=n-i+1}^{n+1}j}{i+1}i=0∑n​ik=i=0∑k​i+1Ski​∏j=n−i+1n+1​j​

证明如下:

∑i=0nik=∑a=0n∑i=0kSkii!Cai=∑i=0kSkii!∑a=0nCai\sum_{i=0}^n i^k \\
=\sum_{a=0}^n\sum_{i=0}^kS_k^i i! C_a^i \\
=\sum_{i=0}^kS_k^i i!\sum_{a=0}^nC_a^i i=0∑n​ik=a=0∑n​i=0∑k​Ski​i!Cai​=i=0∑k​Ski​i!a=0∑n​Cai​

因为a&lt;ia&lt;ia<i时Cai=0C_a^i=0Cai​=0,所以

=∑i=0kSkii!∑a=inCai=\sum_{i=0}^kS_k^i i!\sum_{a=i}^nC_a^i=i=0∑k​Ski​i!a=i∑n​Cai​

由Cmn=Cm−1n−1+Cm−1nC_m^n =C_{m-1}^{n-1}+C_{m-1}^nCmn​=Cm−1n−1​+Cm−1n​得

∑a=inCai=Cii+Ci+1i+⋯+Cni=Cii+1+Cii+Ci+1i+⋯+Cni=Ci+1i+1+Ci+1i+⋯+Cni⋯=Cn+1i+1\sum_{a=i}^nC_a^i=C_i^i+C_{i+1}^i+\cdots +C_n^i \\
=C_i^{i+1}+C_i^i+C_{i+1}^i+\cdots +C_n^i \\
=C_{i+1}^{i+1}+C_{i+1}^i+\cdots +C_n^i \\
\cdots \\
=C_{n+1}^{i+1}
a=i∑n​Cai​=Cii​+Ci+1i​+⋯+Cni​=Cii+1​+Cii​+Ci+1i​+⋯+Cni​=Ci+1i+1​+Ci+1i​+⋯+Cni​⋯=Cn+1i+1​

所以原式又可以化成下面这样:

=∑i=0kSkii!Cn+1i+1=∑i=0kSki∏j=n−i+1n+1ji+1=\sum_{i=0}^kS_k^i i!C_{n+1}^{i+1} \\
=\sum_{i=0}^k\frac{S_k^i\prod_{j=n-i+1}^{n+1}j}{i+1}=i=0∑k​Ski​i!Cn+1i+1​=i=0∑k​i+1Ski​∏j=n−i+1n+1​j​

这样式子就推完了。

自然数幂求和——第二类Strling数的更多相关文章

  1. HDU 4045 Machine scheduling --第二类Strling数

    题意: n个数(1~n)取出r个数,取出的数相差要>=k, 然后分成m个可空组,问有多少种情况. 解法: 先看从n个数中取r个相差>=k的数的方法数,可以发现 dp[i][j] = dp[ ...

  2. 自然数幂和——第一类Stirling数和第二类Stirling数

    第一类Stirling数 首先设 $$S_k(n)=\sum_{i=0}^ni^k$$ 根据第一类斯特林数的定义(P是排列数,C是组合数,s是Stirling) $$C_n^k={P_n^k\over ...

  3. Codeforces 622F The Sum of the k-th Powers ( 自然数幂和、拉格朗日插值法 )

    题目链接 题意 : 就是让你求个自然数幂和.最高次可达 1e6 .求和上限是 1e9 分析 :  题目给出了最高次 k = 1.2.3 时候的自然数幂和求和公式 可以发现求和公式的最高次都是 k+1 ...

  4. 第二类Stirling数

    第二类斯特林数 第二类Stirling数:S2(p, k) 1.组合意义:第二类Stirling数计数的是把p个互异元素划分为k个非空集合的方法数 2.递推公式: S2(0, 0) = 1 S2(p, ...

  5. [BZOJ5093]图的价值(NTT+第二类Stirling数)

    5093: [Lydsy1711月赛]图的价值 Time Limit: 30 Sec  Memory Limit: 256 MBSubmit: 250  Solved: 130[Submit][Sta ...

  6. 自然数幂和&伯努利数(Bernoulli)

    二项式定理求自然数幂和 由二项式定理展开得 \[ (n+1)^{k+1}-n^{k+1}=\binom {k+1}1n^k+\binom {k+1}2n^{k-1}+\cdots+\binom {k+ ...

  7. UVA766 Sum of powers(1到n的自然数幂和 伯努利数)

    自然数幂和: (1) 伯努利数的递推式: B0 = 1 (要满足(1)式,求出Bn后将B1改为1 /2) 参考:https://en.wikipedia.org/wiki/Bernoulli_numb ...

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

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

  9. [总结] 第二类Stirling数

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

随机推荐

  1. AsyncAwait

    using System; using System.Diagnostics; using System.Threading; using System.Threading.Tasks; namesp ...

  2. 2019 牛客多校第一场 A Equivalent Prefixes

    题目链接:https://ac.nowcoder.com/acm/contest/881/A 题目大意 定义 RMQ(u, L, R) 为 u 数组在区间 [L, R] 上最小值的下标. 如果有 2 ...

  3. 如何把本地文件上传github

    1.$ git config --global user.name "xxx" 2.$ git config --global user.email xxx@qq.com 3.进入 ...

  4. 解决:Map的area属性标签鼠标Hover可以给area加背景

    css的area标签是不支持hover的,只有a标签才支持.li标签在IE浏览器下才支持,所以采用jquery的mouseenter和mouseleave事件完成.首先讲jQuery对应的事件:1.m ...

  5. MySQL 07章_子查询

    子查询就是查询中还可以嵌套其他的查询,通常是内层查询的结果作为外层查询的条件来使用 执行循序,自内向外依次执行 一.内层查询返回“单列单行”的结果 -- 1.查询宋江的出生日期 SELECT TIME ...

  6. Hive HA基本原理

  7. CCPC-WFinal-女生专场

    1001:CCPC直播   字符串处理,几个if语句 1002:口算训练   前缀和处理<=根号n的因数,大于根号n的因数每个数至多有一个,用vector存下每个大因数的位置,map离散化.查询 ...

  8. Java迷宫代码,深度优先遍历

    此次迷宫深度优先遍历寻找路径采用栈结构,每个节点都有固定的行走方向(右下左上),除非一个方向走不通,不然会一条道走到黑. 如果路径存在,打印出行走路径,否则打印出迷宫不存在有效路径. 方向常量定义: ...

  9. Linux CentOS 6.7 挂载U盘

    1. 首先查看U盘是否成功安装fdisk -l 2. 在/mnt下创建U盘目录mkdir /mnt/usb 3. 挂载U盘mount -t vfat /dev/sdb1 /mnt/usb 4. 卸载U ...

  10. [JZOJ4331] 【清华集训模拟】树

    题目 题目大意 给你一棵带点权的树,求将树变成一堆不相交的链,而且这些链的权值和非负的方案数. 正解 显然这道题是个\(DP\). 首先求个前缀和\(sum\). 为了后面讲述方便,我这样设:\(f_ ...