問題はこちら
問題概要
解説
先頭の人がどうなるかで場合分けを行います.
- 先頭の人が取り除かれるとき:
番目だった人は取り除かれ,
番目だった人は
番目になる.
- 先頭の人が末尾に移されるとき:
番目だった人は
番目になり,
番目だった人は
番目になる.
したがっては以下のようになります.
のせいで遷移に循環があります.
と置くと
は
の一次式
で表すことができるので,
の昇順に
を持ってDPを行うと
となるため,
となります.今回の制約では
が
になることは無いため正しく求めることができます.時間計算量は
で,空間計算量は
です.