atcoder#ABC170E. [ABC170E] Smart Infants

[ABC170E] Smart Infants

配点 : 500500

問題文

AtCoder に参加している幼児が NN 人おり、11 から NN の番号が付けられています。また、幼稚園が 2×1052\times 10^5 校あり、11 から 2×1052\times 10^5 の番号が付けられています。 幼児 ii のレートは AiA_i であり、はじめ幼稚園 BiB_i に所属しています。

これから QQ 回にわたって、転園が行われます。 jj 回目の転園では、幼児 CjC_j の所属を幼稚園 DjD_j に変更します。

ここで、「平等さ」を、AtCoderに参加している幼児が一人以上いるような幼稚園それぞれについて園内で最もレートの高い幼児のレートを求め、その最小値として得られる値とします。

QQ 回それぞれの転園後の平等さを求めてください。

制約

  • 1N,Q2×1051 \leq N,Q \leq 2 \times 10^5
  • 1Ai1091 \leq A_i \leq 10^9
  • 1CjN1 \leq C_j \leq N
  • 1Bi,Dj2×1051 \leq B_i,D_j \leq 2 \times 10^5
  • 入力はすべて整数である。
  • jj 回目の転園の前後で幼児 CjC_j の所属は異なる。

入力

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

NN QQ

A1A_1 B1B_1

A2A_2 B2B_2

::

ANA_N BNB_N

C1C_1 D1D_1

C2C_2 D2D_2

::

CQC_Q DQD_Q

出力

QQ 行出力せよ。 jj 行目には、jj 回目の転園の後の平等さを出力せよ。

6 3
8 1
6 2
9 3
1 1
2 2
1 3
4 3
2 1
1 2
6
2
6

はじめ、幼稚園 11 には幼児 1,41, 4、幼稚園 22 には幼児 2,52, 5、幼稚園 33 には幼児 3,63, 6 が所属しています。

11 回目の転園で幼児 44 の所属を幼稚園 33 に変更すると、幼稚園 11 には幼児 11、幼稚園 22 には幼児 2,52, 5、幼稚園 33 には幼児 3,4,63, 4, 6 が所属している状態になります。幼稚園 11 で最もレートの高い幼児のレートは 88、幼稚園 22 では 66、幼稚園 33 では 99 です。これらの最小値は 66 であるので、11 行目には 66 を出力します。

22 回目の転園で 22 番目の幼児の所属を幼稚園 11 に変更すると、幼稚園 11 には幼児 1,21, 2、幼稚園 22 には幼児 55、幼稚園 33 には幼児 3,4,63, 4, 6 が所属している状態になります。幼稚園 11 で最もレートの高い幼児のレートは 88、幼稚園 22 では 22、幼稚園 33 では 99 です。これらの最小値は 22 であるので、22 行目には 22 を出力します。

33 回目の転園で 11 番目の幼児の所属を幼稚園 22 に変更すると、幼稚園 11 には幼児 22、幼稚園 22 には幼児 1,51, 5、幼稚園 33 には幼児 3,4,63, 4, 6 が所属している状態になります。幼稚園 11 で最もレートの高い幼児のレートは 66、幼稚園 22 では 88、幼稚園 33 では 99 です。これらの最小値は 66 であるので、33 行目には 66 を出力します。

2 2
4208 1234
3056 5678
1 2020
2 2020
3056
4208