AT_agc069_c [AGC069C] AB*A Changing

Description

[problemUrl]: https://atcoder.jp/contests/agc069/tasks/agc069_c 長さ $ N $ の `A` と `B` のみからなる文字列 $ S,T $ が与えられます。$ S $ の $ i $ 文字目を $ s_i $ と表すことにします。 あなたは $ S $ に対して次の操作を $ 0 $ 回以上何度でも行えます。 - 以下の条件を満たす整数組 $ (i,j) $ を選ぶ。 - $ 1\ \leq\ i\ \lt\ j\ \leq\ N $ - $ s_i\ =\ s_j\ = $ `A` - $ s_{i+1}\ =\ s_{i+2}\ =\ \ldots\ =\ s_{j-1}\ = $ `B` - そして、$ s_i,s_{i+1},\ldots,s_j $ を、それぞれ `A` と `B` のうち操作前と違う方の文字に同時に置き換える。 操作の繰り返しによって $ S $ と $ T $ を一致させることが可能ならば必要な操作回数の最小値を、不可能ならば `-1` を出力してください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ S $ $ T $

Output Format

$ S $ と $ T $ を一致させることが可能ならば必要な操作回数の最小値を、不可能ならば `-1` を出力せよ。

Explanation/Hint

### 制約 - $ 1\ \leq\ N\ \leq\ 2\ \times\ 10^5 $ - $ S,T $ は長さ $ N $ の `A` と `B` のみからなる文字列 ### Sample Explanation 1 以下のように操作をすると $ 2 $ 回で $ S $ と $ T $ を一致させられます。 - $ (i,j)=(2,3) $ として操作をする。これによって $ S $ は `ABBBA` になる。 - $ (i,j)=(1,5) $ として操作をする。これによって $ S $ は `BAAAB` になる。 $ 1 $ 回以下の操作で $ S $ と $ T $ を一致させることはできないため、答えは $ 2 $ になります。 ### Sample Explanation 2 $ S $ と $ T $ を一致させることができません。$ (i,j) $ は $ i\ \lt\ j $ となるように選ばないといけないことに気を付けてください。 ### Sample Explanation 3 操作をしなくても $ S $ と $ T $ が一致しています。