atcoder#ARC151A. [ARC151A] Equal Hamming Distances

[ARC151A] Equal Hamming Distances

配点 : 300300

問題文

以下では、01 のみからなる文字列を 0101 列と呼びます。

22 つの長さ NN0101S,TS, T が与えられます。 下記の条件を満たす長さ NN0101UU のうち辞書順最小のものを出力してください。

  • SSUU のハミング距離は、TTUU のハミング距離に等しい。

ただし、そのような長さ NN0101UU が存在しない場合は、代わりに 1-1 を出力してください。

ハミング距離とは?

0101X=X1X2XNX = X_1X_2\ldots X_N0101Y=Y1Y2YNY = Y_1Y_2\ldots Y_Nハミング距離は、XiYiX_i \neq Y_i を満たす整数 1iN1 \leq i \leq N の個数です。

辞書順とは?

0101X=X1X2XNX = X_1X_2\ldots X_N0101Y=Y1Y2YNY = Y_1Y_2\ldots Y_N より辞書順で小さいとは、下記の 22 つの条件をともに満たす整数 1iN1 \leq i \leq N が存在することを言います。

  • X1X2Xi1=Y1Y2Yi1X_1X_2\ldots X_{i-1} = Y_1Y_2\ldots Y_{i-1}
  • Xi=X_i = 0 かつ Yi=Y_i = 1

制約

  • 1N2×1051 \leq N \leq 2 \times 10^5
  • NN は整数
  • S,TS, T は長さ NN0101

入力

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

NN

SS

TT

出力

問題文中の条件を満たす長さ NN0101UU のうち辞書順最小のものを出力せよ。 ただし、そのような 0101UU が存在しない場合は、代わりに 1-1 を出力せよ。

5
00100
10011
00001

U=U = 00001とおくと、SSUU のハミング距離と、TTUU のハミング距離はどちらも 22 です。 また、これが問題文中の条件を満たす長さ NN0101UU のうち辞書順最小です。

1
0
1
-1

問題文中の条件を満たす長さ NN0101UU が存在しないため、1-1 を出力します。