[ABC286C] Rotate and Palindrome

题意翻译

给出一个字符串,有两种操作: + 花费 A ,把串的第一位放到最后一位 + 花费 B ,修改串的一个字母 求把原串变成回文串的最小代价。 输入: 先输入 $n,A,B$ ,第二行字符串 $S$

题目描述

[problemUrl]: https://atcoder.jp/contests/abc286/tasks/abc286_c 長さ $ N $ の文字列 $ S $ が与えられます。$ S_i\ (1\leq\ i\ \leq\ N) $ を $ S $ の左から $ i $ 番目の文字とします。 あなたは以下の $ 2 $ 種類の操作を好きな順番で $ 0 $ 回以上好きな回数行うことができます。 - $ A $ 円払う。 $ S $ の左端の文字を右端に移動する。すなわち、$ S_1S_2\ldots\ S_N $ を $ S_2\ldots\ S_NS_1 $ に変える。 - $ B $ 円払う。 $ 1 $ 以上 $ N $ 以下の整数 $ i $ を選び、 $ S_i $ を好きな英小文字で置き換える。 $ S $ を回文にするためには最低で何円必要ですか? 回文とは ある文字列 $ T $ について、 $ T $ の長さを $ |T| $ として、全ての整数 $ i $ ($ 1\ \le\ i\ \le\ |T| $) について、 $ T $ の前から $ i $ 文字目と後ろから $ i $ 文字目が同じであるとき、またそのときに限って、 $ T $ は回文です。

输入输出格式

输入格式


入力は以下の形式で標準入力から与えられる。 > $ N $ $ A $ $ B $ $ S $

输出格式


答えを整数として出力せよ。

输入输出样例

输入样例 #1

5 1 2
rrefa

输出样例 #1

3

输入样例 #2

8 1000000000 1000000000
bcdfcgaa

输出样例 #2

4000000000

说明

### 制約 - $ 1\leq\ N\ \leq\ 5000 $ - $ 1\leq\ A,B\leq\ 10^9 $ - $ S $ は英小文字からなる長さ $ N $ の文字列 - $ S $ 以外の入力は全て整数 ### Sample Explanation 1 最初に $ 2 $ 番目の操作を $ 1 $ 回行います。$ 2 $ 円払い、$ i=5 $ として $ S_5 $ を `e` で置き換えます。 $ S $ は `rrefe` となります。 次に $ 1 $ 番目の操作を $ 1 $ 回行います。$ 1 $ 円払い、$ S $ は `refer` となります。これは回文です。 よって $ 3 $ 円払うことで $ S $ を回文にすることができました。 $ 2 $ 円以下払うことで $ S $ を回文にすることは不可能なので、これが答えです。 ### Sample Explanation 2 答えは $ 32 $ bit 整数に収まらない場合があることに注意してください。