AT_arc151_a [ARC151A] Equal Hamming Distances
Description
[problemUrl]: https://atcoder.jp/contests/arc151/tasks/arc151_a
以下では、`0` と `1` のみからなる文字列を $ 01 $ 列と呼びます。
$ 2 $ つの長さ $ N $ の $ 01 $ 列 $ S,\ T $ が与えられます。 下記の条件を満たす長さ $ N $ の $ 01 $ 列 $ U $ のうち辞書順最小のものを出力してください。
- $ S $ と $ U $ のハミング距離は、$ T $ と $ U $ のハミング距離に等しい。
ただし、そのような長さ $ N $ の $ 01 $ 列 $ U $ が存在しない場合は、代わりに $ -1 $ を出力してください。
ハミング距離とは?$ 01 $ 列 $ X\ =\ X_1X_2\ldots\ X_N $ と $ 01 $ 列 $ Y\ =\ Y_1Y_2\ldots\ Y_N $ の**ハミング距離**は、$ X_i\ \neq\ Y_i $ を満たす整数 $ 1\ \leq\ i\ \leq\ N $ の個数です。
辞書順とは?$ 01 $ 列 $ X\ =\ X_1X_2\ldots\ X_N $ が $ 01 $ 列 $ Y\ =\ Y_1Y_2\ldots\ Y_N $ より**辞書順で小さい**とは、下記の $ 2 $ つの条件をともに満たす整数 $ 1\ \leq\ i\ \leq\ N $ が存在することを言います。
- $ X_1X_2\ldots\ X_{i-1}\ =\ Y_1Y_2\ldots\ Y_{i-1} $
- $ X_i\ = $ `0` かつ $ Y_i\ = $ `1`
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $ $ S $ $ T $
Output Format
問題文中の条件を満たす長さ $ N $ の $ 01 $ 列 $ U $ のうち辞書順最小のものを出力せよ。 ただし、そのような $ 01 $ 列 $ U $ が存在しない場合は、代わりに $ -1 $ を出力せよ。
Explanation/Hint
### 制約
- $ 1\ \leq\ N\ \leq\ 2\ \times\ 10^5 $
- $ N $ は整数
- $ S,\ T $ は長さ $ N $ の $ 01 $ 列
### Sample Explanation 1
$ U\ = $ `00001`とおくと、$ S $ と $ U $ のハミング距離と、$ T $ と $ U $ のハミング距離はどちらも $ 2 $ です。 また、これが問題文中の条件を満たす長さ $ N $ の $ 01 $ 列 $ U $ のうち辞書順最小です。
### Sample Explanation 2
問題文中の条件を満たす長さ $ N $ の $ 01 $ 列 $ U $ が存在しないため、$ -1 $ を出力します。