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 翻译