atcoder#AGC056C. [AGC056C] 01 Balanced

[AGC056C] 01 Balanced

配点 : 900900

問題文

0, 1 からなる長さ NN の文字列 ss を作ることを考えます. ここで,ssMM 個の条件を満たす必要があります. ii 番目の条件は整数 Li,RiL_i,R_i (1Li<RiN1 \leq L_i < R_i \leq N) で表されます. これは,ssLiL_i 文字目から RiR_i 文字目までを見たときに,そこに含まれる 0 の個数と 1 の個数が等しい必要があることを意味します.

すべての条件を満たす中で辞書順最小の ss を求めてください. なお,問題の制約より,条件を満たす ss が必ず存在することが証明できます.

制約

  • 2N1062 \leq N \leq 10^6
  • 1M2000001 \leq M \leq 200000
  • 1Li<RiN1 \leq L_i < R_i \leq N
  • (RiLi+1)0mod2(R_i-L_i+1) \equiv 0 \mod 2
  • (Li,Ri)(Lj,Rj)(L_i,R_i) \neq (L_j,R_j) (iji \neq j)
  • 入力される値はすべて整数である

入力

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

NN MM

L1L_1 R1R_1

L2L_2 R2R_2

\vdots

LML_M RMR_M

出力

答えを出力せよ.

4 2
1 2
3 4
0101
6 2
1 4
3 6
001100
20 10
6 17
2 3
14 19
5 14
10 15
7 20
10 19
3 20
6 9
7 12
00100100101101001011