#agc049b. [agc049_b]Flip Digits

[agc049_b]Flip Digits

問題文

01 からなる長さ NN の文字列 SS 及び TT が与えられます. あなたは,SS に以下の操作を好きな回数行うことができます.

  • Si=S_i=1 となる ii (2leqileqN2 \\leq i \\leq N) を選ぶ. そして,SiS_i0 で置き換える. さらに,Si1S_{i-1} を今と異なる文字へ変更する.つまり,操作の直前で Si1S_{i-1}0 であれば 1 に,1 であれば 0 に変更する.

SSTT に一致させることは可能でしょうか? また可能な場合は,そのために必要な最小の操作回数はいくらでしょうか?

制約

  • 1leqNleq5times1051 \\leq N \\leq 5 \\times 10^5
  • SS0,1 からなる長さ NN の文字列.
  • TT0,1 からなる長さ NN の文字列.

入力

入力は以下の形式で標準入力から与えられる.

NN SS TT

出力

SSTT に一致させることが可能な場合,必要な最小の操作回数を出力せよ. 不可能な場合,\-1\-1 を出力せよ.


入力例 1

3
001
100

出力例 1

2

001 → (i=3i=3 で操作) → 010 → (i=2i=2 で操作) → 100 とすればよいです.


入力例 2

3
001
110

出力例 2

-1

入力例 3

5
10111
01010

出力例 3

5