#abc286c. [abc286_c]Rotate and Palindrome
[abc286_c]Rotate and Palindrome
問題文
長さ の文字列 が与えられます。 を の左から 番目の文字とします。
あなたは以下の 種類の操作を好きな順番で 回以上好きな回数行うことができます。
-
円払う。 の左端の文字を右端に移動する。すなわち、 を に変える。
-
円払う。 以上 以下の整数 を選び、 を好きな英小文字で置き換える。
を回文にするためには最低で何円必要ですか?
回文とは ある文字列 について、 の長さを として、全ての整数 () について、 の前から 文字目と後ろから 文字目が同じであるとき、またそのときに限って、 は回文です。
制約
- は英小文字からなる長さ の文字列
- 以外の入力は全て整数
入力
入力は以下の形式で標準入力から与えられる。
出力
答えを整数として出力せよ。
入力例 1
5 1 2
rrefa
出力例 1
3
最初に 番目の操作を 回行います。 円払い、 として を e
で置き換えます。 は rrefe
となります。
次に 番目の操作を 回行います。 円払い、 は refer
となります。これは回文です。
よって 円払うことで を回文にすることができました。 円以下払うことで を回文にすることは不可能なので、これが答えです。
入力例 2
8 1000000000 1000000000
bcdfcgaa
出力例 2
4000000000
答えは bit 整数に収まらない場合があることに注意してください。