AT_abc447_c [ABC447C] Insert and Erase A
Description
英大文字からなる文字列 $ S,T $ が与えられます。
あなたは以下の $ 2 $ 種類の操作を好きな順序で好きな回数( $ 0 $ 回でも良い)行うことができます。
- $ S $ の好きな位置(先頭および末尾を含む)に文字 `A` を $ 1 $ つ挿入する。
- $ S $ に含まれる文字 `A` を $ 1 $ つ選んで削除する。なお、残った文字は元の順序を保ったまま連結される。
$ S $ を $ T $ に一致させることが可能かどうか判定し、可能な場合は必要な操作回数の合計の最小値を求めてください。
Input Format
入力は以下の形式で標準入力から与えられる。
>$S$
$T$
Output Format
$ S $ を $ T $ に一致させることが可能ならば必要な操作回数の合計の最小値を、不可能ならば `-1` を出力せよ。
Explanation/Hint
### Sample Explanation 1
以下のように、合計 $ 3 $ 回の操作で $ S $ を $ T $ に一致させることが可能です。
- $ S $ の $ 2 $ 文字目と $ 3 $ 文字目の間に `A` を $ 1 $ つ挿入する。 $ S= $ `ABAC` となる。
- $ S $ の $ 1 $ 文字目にある `A` を削除する。 $ S= $ `BAC` となる。
- $ S $ の末尾に `A` を $ 1 $ つ挿入する。 $ S= $ `BACA` となる。
合計 $ 2 $ 回以下の操作で $ S $ を $ T $ に一致させることはできないため、答えは $ 3 $ です。
### Sample Explanation 2
どのように操作を行っても、 $ S $ を $ T $ に一致させることはできません。
### Sample Explanation 3
$ 1 $ 回も操作を行う必要がありません。
### Constraints
- $ S,T $ は英大文字からなる長さ $ 1 $ 以上 $ 3\times 10^5 $ 以下の文字列