stirling2
関数 · 第1種スターリング数(符号付き)s(n, 0), s(n, 1), …, s(n, n) を求める(行)
template <internal::static_modint_c mint>
std::vector<mint> stirling2(int n);
概要
第2種スターリング数 S(n, 0), S(n, 1), …, S(n, n) を求める(行)
$S(n,k)=\frac{1}{k!}\sum_{i=0}^{k}(-1)^{k-i}\binom{k}{i}i^n$ を2列の畳み込みとして計算する。
テンプレートパラメータ
| 名前 | 説明 |
|---|---|
mint |
NTTを利用できる static modint 型 |
パラメータ
| 名前 | 説明 |
|---|---|
n |
行番号。0以上であること |
戻り値
長さ $n+1$ の列。k番目の要素は第2種スターリング数 $S(n,k)$
計算量
- $O(n\log n)$
関連項目
stirling1— 第1種スターリング数(符号付き)s(n, 0), s(n, 1), …, s(n, n) を求める(行)stirling1_fixed_k— 第1種スターリング数(符号付き)s(0,k), s(1,k), …, s(n,k) を求める(列固定)stirling2_fixed_k— 第2種スターリング数 S(0,k), S(1,k), …, S(n,k) を求める(列固定)