AT_tupc2022_e 00-11 Rotation
Description
0と1からなる長さ $N$ の文字列 $S, T$ が与えられます。 $S$ の $i$ 文字目を $S_i$ と表します。
あおばさんは文字列 $S$ に対して以下の2種類の操作を行うことで、 $S$ を $T$ に一致させたいです。
- 操作1: $S_iS_{i+1}S_{i+2}$ が $001, 100$ どちらかに等しいような $i(1 \leq i \leq N-2)$ を選ぶ。
そして、その3文字を $001, 100$ どちらかに置き換える。
- 操作2: $S_iS_{i+1}S_{i+2}$ が $110, 011$ どちらかに等しいような $i(1 \leq i \leq N-2)$ を選ぶ。
そして、その3文字を $110, 011$ どちらかに置き換える。
あおばさんは操作2は好きですが、操作1は嫌いです。 $S$ を $T$ に一致させるため操作1を最小何回行えば良いですか。
何回操作を行っても一致させることができない場合は -1 を出力してください。
Input Format
入力は以下の形式で標準入力から与えられます。
```
N
S
T
```
Output Format
$S$ を $T$ に一致させるために必要な操作1の回数の最小値を整数で出力せよ。
一致させることが不可能な場合は -1 と出力せよ。
Explanation/Hint
### Sample Explanation 1
まず、 $ i=5 $ として操作 $ 2 $ を行い、 $ S= $ `1011011` にします。
次に、 $ i=3 $ として操作 $ 2 $ を行い、 $ S= $ `1001111` にします。
最後に、 $ i=2 $ として操作 $ 1 $ を行い、 $ S= $ `1100111` にします。
これにより $ S $ を $ T $ と一致させることができました。操作 $ 1 $ を最低 $ 1 $ 回行う必要があるので答えは $ 1 $ です。
### Sample Explanation 2
$ S $ と $ T $ を一致させることはできません。
## 制約
- $3 \leq N \leq 3 \times 10^5$
- $N$ は整数である
- $S, T$ は0,1からなる長さ $N$ の文字列