公式

A - Remove Substrings 解説 by maroonrk_admin


\(S_1 \neq S_N\) のとき,\(1\) 回の操作でよいです. \(S_1=S_N\) だとします. もし,\(S_i \neq S_1\) かつ \(S_{i+1} \neq S_1\) を満たす \(i\) が存在すれば,\(2\) 回の操作(\([1,i]\) を消し,\([i+1,N]\)を消す)でよいです.

そうでない場合,答えは \(-1\) です. これは帰納法で証明できます.

計算量は \(O(N)\) です.

投稿日時:
最終更新: