首页 > 试题广场 >

回文

[编程题]回文
  • 热度指数:1 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
字符串 S 只包含小写英文字母。有四种操作,每次操作你可以选择其中一种:

删除字符串的第一个字母。
删除字符串的最后一个字母。
在字符串的头部添加任意一个你想要的字母。
在字符串的尾部添加任意一个你想要的字母。

删除一个第 i 种英文字母需要的花费是 Ai,添加一个第 i 种英文字母的花费是 Bi
请问将字符串 S 变成回文串需要的最小花费是多少?

输入描述:
第一行输入一个字符串 S。
接下来 26 行,每行输入两个正整数 Ai 和 Bi,表示删除一个第 i 种字符所需的花费以及添加一个第 i 种字符所需的花费。
1≤ |S| ≤ 105 且字符串 S 中只包含小写英文字母.
1≤ Ai,Bi≤ 109.


输出描述:
输出一个正整数,表示把字符串 S 变成一个回文串的最小花费。
示例1

输入

jelly
1000 1100
350 700
200 800
2000 2000
2000 432
2000 2000
2000 2000
2000 2000
2000 2000
20 2000
2000 2000
350 35
200 800
2000 2000
2000 2000
2000 2000
2000 2000
2000 2000
2000 2000
2000 2000
2000 2000
2000 2000
2000 2000
2000 2000
15 2000
2000 2000

输出

105

这道题你会答吗?花几分钟告诉大家答案吧!

问题信息

上传者:牛客301599号
难度:
0条回答 32浏览

热门推荐

通过挑战的用户

查看代码
回文