atcoder#ARC085D. [ARC085F] NRE

[ARC085F] NRE

配点 : 10001000

問題文

全ての要素が 00 の数列 a={a1,...,aN}a = \{a_1, ..., a_N\} と,0011 からなる数列 b={b1,...,bN}b = \{b_1, ..., b_N\} が与えられます。 どちらも長さは NN です。

あなたは QQ 種類の操作を行うことが可能です。ii 種類目の操作は以下のような動作です。

  • ali,ali+1,...,aria_{l_i}, a_{l_i + 1}, ..., a_{r_i} を全て 11 に書き換える

QQ 種類の操作のうちいくつかを行い,aabb のハミング距離, つまり aibia_i \neq b_i なる ii の数を最小化してください。

制約

  • 1N200,0001 \leq N \leq 200,000
  • bb0,10, 1 からなる
  • 1Q200,0001 \leq Q \leq 200,000
  • 1liriN1 \leq l_i \leq r_i \leq N
  • iji \neq j ならば liljl_i \neq l_j または rirjr_i \neq r_j

入力

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

NN

b1b_1 b2b_2 ...... bNb_N

QQ

l1l_1 r1r_1

l2l_2 r2r_2

::

lQl_Q rQr_Q

出力

ハミング距離の最小値を出力してください。

3
1 0 1
1
1 3
1

操作を行うと a={1,1,1}a = \{1, 1, 1\} になり,ハミング距離は 11 となります。

3
1 0 1
2
1 1
3 3
0

両方の操作を行うと a={1,0,1}a = \{1, 0, 1\} になり,ハミング距離は 00 となります。

3
1 0 1
2
1 1
2 3
1
5
0 1 0 1 0
1
1 5
2

何も操作を行わないのが最適な時もあります。

9
0 1 0 1 1 1 0 1 0
3
1 4
5 8
6 7
3
15
1 1 0 0 0 0 0 0 1 0 1 1 1 0 0
9
4 10
13 14
1 7
4 14
9 11
2 6
7 8
3 12
7 13
5
10
0 0 0 1 0 0 1 1 1 0
7
1 4
2 5
1 3
6 7
9 9
1 5
7 9
1