当前位置: 首页 > news >正文

第二类斯特林数列

第二类斯特林数·列

第二类斯特林数·列

题目描述

第二类斯特林数 \(\begin{Bmatrix} n \\m \end{Bmatrix}\) 表示把 \(n\)不同元素划分成 \(m\)相同的集合(不能有空集)的方案数。

给定 \(n,k\),对于所有的整数 \(i\in[0,n]\),你要求出 \(\begin{Bmatrix} i \\k \end{Bmatrix}\)

由于答案会非常大,所以你的输出需要对 \(167772161\)\(2^{25}\times 5+1\),是一个质数)取模。

输入格式

一行两个正整数 \(n,k\),意义见题目描述。

输出格式

共一行 \(n+1\) 个非负整数。

你需要按顺序输出 \(\begin{Bmatrix} 0 \\k \end{Bmatrix},\begin{Bmatrix} 1 \\k \end{Bmatrix},\begin{Bmatrix} 2 \\k \end{Bmatrix},\dots,\begin{Bmatrix} n \\k \end{Bmatrix}\) 的值。

输入 #1

3 2

输出 #1

0 0 1 3

把答案设成多项式

\[H_k = \sum_{i=0}^\infty \begin{Bmatrix} i \\ k \end{Bmatrix} x^i \]

然后,我们发现

\[H_k = \sum_{i=0}^\infty \left( \begin{Bmatrix} i-1 \\ k-1 \end{Bmatrix} + k \begin{Bmatrix} i-1 \\ k \end{Bmatrix} \right) x^i \]

\[= \sum_{i=0}^\infty \begin{Bmatrix} i-1 \\ k-1 \end{Bmatrix} x^i + k \sum_{i=0}^\infty \begin{Bmatrix} i-1 \\ k \end{Bmatrix} x^i \]

\[= x \sum_{i=0}^\infty \begin{Bmatrix} i \\ k-1 \end{Bmatrix} x^i + kx \sum_{i=0}^\infty \begin{Bmatrix} i \\ k \end{Bmatrix} x^i = xH_{k-1} + kxH_k \]

整理一下就是

\[H_k = xH_k + kxH_{k-1} \]

那么

\[H_k = \frac{x}{1-kx} H_{k-1} \]

根据递推公式能得到边界就是 \(H_0=1\),那么

\[H_k = H_0 \prod_{i=1}^k \frac{x}{1-ix} = x^k \left( \prod_{i=1}^k (1-ix) \right)^{-1} \]

重点就是怎么算

\[\prod_{i=1}^k (1-ix) \]

\[\prod_{i=1}^k (1-ix) = \prod_{i=1}^k x\left( \frac{1}{x} - i \right) = x^k \prod_{i=1}^k (x^{-1} - i) \]

\(\prod_{i=1}^k (x-i)\)翻转过来之后就是\(x^k \prod_{i=1}^k (x^{-1} - i)\)

那么注意到

\[\prod_{i=1}^k (x-i) = \frac{x^{\underline{k+1}}}{x} \]

我们只要求出 \(x^{\underline{k+1}}\) 就好。
\(x^{\underline{2n}} = x^{\underline{n}} * (x-n)^{\underline{n}}\)

我们知道一个多项式 $F(x)$ 可以快速求出 $F(x-c)$,方法:

首先\(c=\text{mod}-c\),那么问题变成\(F(x+c)\)

\(F(x)\)的系数为\(f[0...n]\)

\[F(x+c)= \sum_{i=0}^n f[i](x+c)^i \]

,显而易见吧!

\[= \sum_{i=0}^n f[i] \sum_{j=0}^i \binom{j}{i}x^j c^{i-j} \]

(二项式定理)

\[= \sum_{i=0}^n f[i] \sum_{j=0}^i \frac{i!}{j!(i-j)!}x^j c^{i-j} \]

\[= \sum_{i=0}^n f[i]i! \sum_{j=0}^i \frac{x^j}{j!} \frac{c^{i-j}}{(i-j)!} \]

\[= \sum_{j=0}^n \frac{x^j}{j!} \sum_{i=j}^n f_i i! \frac{c^{i-j}}{(i-j)!} \]

(交换求和号)

我们要求的就是

\[g[j]*j! = \sum_{i=j}^n f[i]i! \frac{c^{i-j}}{(i-j)!} \]

我们设\(p[n]=f[n]n!; h[n]= \frac{c^n}{n!}\),则

\[g[j]j! = \sum_{i=j}^n p[i]h[i-j] \]

但是我们发现\(i+i-j \neq\)定值 , 我们把\(p\)翻转,得到

\[g[j]j! = \sum_{i=j}^n p'[n-i]h[i-j] \]

那么\(n-i+i-j=n-j\)这就和\(i\)无关了。

卷起来之后翻转即可,记得最后乘上\(j!\)

http://www.jsqmd.com/news/432986/

相关文章:

  • 供应链计划到底怎么做?三层计划、六个动作,一次讲清!
  • 免费降AI神器2026:新用户必看的省钱攻略 - 还在做实验的师兄
  • 信息类专业毕业设计中常见问题与难点总结
  • 蓝桥/16/B.4/水质检测
  • 多维衰老表型的蛋白质组图谱
  • 京东e卡回收,闲置秒变真金白银 - 京顺回收
  • Kriging代理模型+RSM响应面分析+NSGAII多目标优化+熵权法-TOPSIS决策MATLAB代码
  • 从0到1搭建企业数据中心:AI应用架构师的实战步骤
  • 论文AI率100%怎么降?过来人的三步降AI攻略(附实测截图) - 还在做实验的师兄
  • 龙虾机器人:让 AI 替你动手,效率直接拉满!
  • 2026最新降AI率工具测评:花了800块测完这些,帮你省踩坑的钱 - 还在做实验的师兄
  • 年薪128万!2026年转行AI大模型岗,是普通IT人最后的“阶级跃迁”机会
  • 多肽定制合成丨Peforelin CAS号:147859-97-0
  • AI率从92%降到5%:我的实操复盘和工具组合方案 - 还在做实验的师兄
  • 太空光伏电池的联合环境试验
  • 【Proteus仿真-开源】基于51单片机的智能温室大棚【详细流程介绍】 - 少年
  • DeepSeek降AI指令怎么写?附15条实测有效的Prompt模板 - 还在做实验的师兄
  • 2026降AI工具第一梯队:知网实测数据说话 - 还在做实验的师兄
  • 毕业论文AI率高于30%怎么办?学长答辩前三天的自救指南 - 还在做实验的师兄
  • 2026庭院灯市场口碑榜:哪些厂商值得你选择?6米庭院灯/9米市政路灯/中华灯景观灯,庭院灯实力厂家哪个好 - 品牌推荐师
  • 2026毕业季降AI工具怎么选?学姐的血泪推荐 - 还在做实验的师兄
  • 开源高性能文档提取利器Kreuzberg:支持75+格式、OCR及Docker部署
  • 降AI工具三步工作流:检测→处理→验证的标准化流程 - 还在做实验的师兄
  • SpeedAI和比话降AI怎么选?1.2元vs8元的真实差距 - 还在做实验的师兄
  • 去AI味提示词大全:25条指令让论文回归人类写作风格 - 还在做实验的师兄
  • 3.3软考高项-每日5题
  • AI率从90%降到10%以下:我的分段治疗法(真实案例复盘) - 还在做实验的师兄
  • 2026论文AI率标准全解读:本科30%、硕士15%、博士10%背后的逻辑 - 还在做实验的师兄
  • 知网vs维普AIGC检测大对比:算法差异和应对策略全解析 - 还在做实验的师兄
  • 知网AIGC检测算法升级后怎么降AI?2026最新应对方案 - 还在做实验的师兄