#aBC286C. [ABC286C] Rotate and Palindrome
[ABC286C] Rotate and Palindrome
AT_abc286_c [ABC286C] Rotate and Palindrome
题目描述
给定一个长度为 的字符串 。记 为 从左往右的第 个字符。
你可以以任意顺序、任意次数(包括 次)进行以下两种操作:
- 支付 元,将 的最左端字符移动到最右端。也就是说,将 变为 。
- 支付 元,选择一个 到 之间的整数 ,并将 替换为任意一个小写英文字母。
请问,最少需要支付多少元才能将 变为回文串?
回文串的定义如下:对于某个字符串 ,记其长度为 ,当且仅当对于所有整数 (), 的第 个字符与倒数第 个字符相同, 才是回文串。
输入格式
输入以如下格式从标准输入读入。
输出格式
请输出一个整数,表示将 变为回文串所需的最小花费。
输入输出样例 #1
输入 #1
5 1 2
rrefa
输出 #1
3
输入输出样例 #2
输入 #2
8 1000000000 1000000000
bcdfcgaa
输出 #2
4000000000
说明/提示
限制条件
- 是由小写英文字母组成的长度为 的字符串
- 除 外的所有输入均为整数
样例解释 1
首先进行第 种操作 次,支付 元,将 的 替换为 e,此时 变为 rrefe。接着进行第 种操作 次,支付 元, 变为 refer,这是一个回文串。因此,最少支付 元即可将 变为回文串。无法用 元或更少的花费将 变为回文串,所以答案是 。
样例解释 2
请注意,答案可能超过 位整数的范围。
由 ChatGPT 4.1 翻译