我没有想到计算 $f(S)\ge k$ 的方案数,但是我想到了另一种自认为更加自然的转化。
考虑对于一个 $S$ 和一个 $m$ 来讲什么时候 $m$ 能作为 $f(S)$ 取到最大值的 $m$。
发现条件是,对于所有 $m'>m$ 都不能:在保留所有 $[m'+1,n]$ 中的数的前提下,将 $[0,m'-1]$ 的前缀填满。
于是我们考虑枚举 $m$ 计算这个 $m$ 恰好最为最大值位置的方案数,这个方案数就等于当前能填的方案数,减去之后能找到更大的 $m'$ 的方案数。
后者本质就是将 $[m+1,n]$ 都保留的情况下,能够将 $[0,m]$ 构造出来 ,并且 $S$ 中不存在 $m$ 。
两个要算的东西都可以 dp 处理,这个 dp 是跟官方题解的 dp 一样的。
转移式子的话可以看看我写的暴力。