AT_utpc2024_i Insert AB or BA
Description
`A` と `B` からなる文字列 $ S $ と $ T $ が与えられます。
以下の $ 2 $ 種類の操作を、 $ 0 $ 回以上の好きな回数、好きな順番で行うことを考えます。
- $ S $ の任意の位置に `AB` を挿入する。コストが $ X $ かかる。
- $ S $ の任意の位置に `BA` を挿入する。コストが $ Y $ かかる。
なお、挿入は先頭・末尾に対して行うこともできます。
$ S $ を $ T $ と一致させることが可能かを判定し、可能な場合は必要な合計コストの最小値を求めてください。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ S $ $ T $ $ X $ $ Y $
Output Format
$ S $ を $ T $ と一致させることが可能な場合は、必要な合計コストの最小値を $ 1 $ 行に出力せよ。不可能な場合は `-1` を出力せよ。
Explanation/Hint
### Sample Explanation 1
はじめ、 $ S = $ `AB` です。以下のように操作を行うことで、 $ S $ を $ T= $ `ABAABB` に一致させることができます。
- $ S = $ `AB` の $ 1 $ 文字目と $ 2 $ 文字目の間に `BA` を挿入する。 $ S = $ `ABAB` となる。
- $ S = $ `ABAB` の $ 3 $ 文字目と $ 4 $ 文字目の間に `AB` を挿入する。 $ S = $ `ABAABB` となる。
この場合、かかるコストの合計は $ 3 + 5 = 8 $ となります。実はこれが必要な合計コストの最小値でもあります。
### Constraints
- $ 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 $