問題リンク
100位切れたのはうれしいね
解説
見た目が区間dpと書いてあるので、まずは区間dpを定義します。
にあるセグメントの数の最大値
そうすると右端をソートして(右端が同じ場合左端が右にあるものから)左から見ていきます。
そうすると、セグメントがのとき、において
となります。とに関しては左端右端が被る分には問題がないことに注意しましょう。
あとは区間を取らない場合に注意すればこの問題は解けました。(区間が無駄に大きいので座圧しておきましょうね)
計算量はです。
提出コード
codeforces.com