AT_utpc2024_i Insert AB or BA
题目描述
给定由 `A` 和 `B` 组成的字符串 $S$ 和 $T$。
可以按照喜欢的顺序、任意次数(0 次或以上)进行以下两种操作:
- 在 $S$ 的任意位置插入 `AB`。每次操作的花费为 $X$。
- 在 $S$ 的任意位置插入 `BA`。每次操作的花费为 $Y$。
此外,可以在 $S$ 的开头或结尾插入。
请判断能否通过上述操作将 $S$ 变为 $T$,如果可以,求出所需总花费的最小值。
输入格式
输入通过标准输入按以下格式给出。
> $S$ $T$ $X$ $Y$
输出格式
如果可以将 $S$ 变为 $T$,请输出所需总花费的最小值。否则,输出 `-1`。
说明/提示
### 样例解释 1
一开始,$S = $ `AB`。可以通过如下操作将 $S$ 变为 $T= $ `ABAABB`。
- 在 $S = $ `AB` 的第 1 个字符和第 2 个字符之间插入 `BA`。此时 $S = $ `ABAB`。
- 在 $S = $ `ABAB` 的第 3 个字符和第 4 个字符之间插入 `AB`。此时 $S = $ `ABAABB`。
在这种情况下,总花费为 $3 + 5 = 8$。事实上,这已经是所需的最小总花费。
### 数据范围
- $X$、$Y$ 为整数。
- $S$、$T$ 均为仅由 `A` 和 `B` 组成的字符串。
- $1 \le |S| \le |T| \le 8000$
- $1 \le X \le 10^9$
- $1 \le Y \le 10^9$
由 ChatGPT 5 翻译