解法
になったら、それ以降は
で割らないものとします。そうすると、求める答えは本来の「
回の操作後の数列としてありうるものの個数」に「
回未満の操作後の
を
つ以上含む数列としてありうるものの個数」を加えたものになります。
から
まで考えたときの、
回操作してできる数列の個数(
はそれまでの要素に
があったかどうかのフラグ)
というDPを考えれば、を
で
回割ると
になるとして、
と遷移が定義できます。あとはここから適切に値をとってきて足し合わせればよいです。
計算量はになります。
反省
DPをDPだと気づくのはけっこう速くなったような気がしますが、詳細を詰めるのが苦手です。