牛客多校6 C Stack(数论,第一类斯特林数,铜牌题)
# 牛客多校6 C Stack(数论,第一类斯特林数,铜牌题)
# Question
定义 为对排列 跑一次单调栈之后栈中剩余元素的个数,求长度为 的所有排列的 的和,一共有 组询问
# Solution
借鉴了牛课讨论区的一个大佬的做法:链接 (opens new window)
定义了 表示长度为 的所有排列中 的个数,我们要求的答案就是
这是第一类斯特林数的一个定义,得到
试着计算 的递推式
已知 表示所有排列方案,即
然后观察到, 就是 ,但是 和 未知,我们分别把他们定义为 和 寻找他们的递推式
于是我们得到了递推式
其中