#abc261g. [abc261_g]Replace
[abc261_g]Replace
题目描述
给定两个由小写英文字母组成的字符串 和 。
高桥从字符串 开始。他可以任意次数以任意顺序执行 种操作。第 个操作如下:
支付代价 。然后,如果当前字符串中包含字符 ,选择其中一个出现的位置,并用字符串 替换它。否则,什么也不做。
找出使字符串变为 所需的最小总代价。如果无法实现,则输出 。
约束条件
- 是
a
、b
,、或z
。 - 、 和 是由小写英文字母组成的字符串。
- 将 视为长度为 的字符串,则 。
- 所有的 对都是不同的。
输入
输入从标准输入给出,格式如下:
输出
输出使字符串变为 所需的最小总代价。如果无法实现,则输出 。
示例1
示例输出1
从 ab
开始,高桥可以按如下方式使用四次操作使得 cbca
:
- 将
ab
中的第 个字符a
替换为b
(第 种操作)。现在字符串变为bb
。 - 将
bb
中的第 个字符b
替换为ca
(第 种操作)。现在字符串变为bca
。 - 将
bca
中的第 个字符b
替换为ca
(第 种操作)。现在字符串变为caca
。 - 将
caca
中的第 个字符a
替换为b
(第 种操作)。现在字符串变为cbca
。
每次操作都需要支付代价 ,总共支付 ,这是最小的可能代价。
示例2
示例输出2
两次操作 a
aaa
aaaaa
总共支付代价 ,这是最小的可能代价。
示例3
示例输出3
无法通过操作将 a
变为 z
。