Loading

【笔记】欧拉数

\(f(n,m)\) 表示长度为 \(n\) 的排列,满足恰好有 \(m\)\(i\) 满足 \(p_i < p_{i + 1}\) 的方案数。

显然可以 \(\mathcal{O}(nm)\) 递推,\(f(n,m) = mf(n - 1,m - 1) + (n - m - 1)f(n - 1, m)\)。组合意义是考虑将最大的数插入的位置。

还可以记一下式子

\[f(n,m) = \sum\limits_{i = 0} ^ {m}(-1) ^ i \binom{n + 1}{i}(m - i + 1) ^ n \]

这样可以 \(\mathcal{O}(m\log )\) 求一行,\(\mathcal{O}(n + m)\) 求一个。

posted @ 2022-06-12 15:58  7KByte  阅读(85)  评论(0编辑  收藏  举报