AT_tupc2024_b Matching Query

Description

$ 0 $ 以上 $ M $ 未満の整数からなる長さ $ N $ の整数列 $ A=(A_1,A_2,\ldots,A_N) $ が与えられます。 $ Q $ 個のクエリが与えられるので順に処理してください。 $ i $ 番目のクエリは以下で説明されます。 - 整数 $ x_i,y_i $ が与えられる。 $ A $ の $ x_i $ 番目の要素を $ y_i $ で更新する。その後、以下の問題を解け。 - 整数列 $ A $ をもとにして頂点数 $ N $ の無向グラフ $ G $ を作る。頂点には $ 1,2,\ldots,N $ までの番号がつけられており、頂点 $ u,v\ (1\leq u\lt v\leq N) $ の間には $ A_u+1\equiv A_v\ (\mathrm{mod}\ M) $ が成り立つとき辺が張られる。 $ G $ の最大マッチングの大きさを求めよ。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ M $ $ Q $ $ A_1 $ $ A_2 $ $ \ldots $ $ A_N $ $ x_1 $ $ y_1 $ $ x_2 $ $ y_2 $ $ \vdots $ $ x_Q $ $ y_Q $

Output Format

$ Q $ 行出力せよ。 $ i $ 行目には $ i $ 個目のクエリの答えを出力せよ。

Explanation/Hint

### 部分点 この問題には複数の部分点が設定されている。 - 追加の制約 $ Q=1 $ を満たすデータセットに正解した場合は $ 10 $ 点が与えられる。 - 追加の制約 $ M\leq 100 $ を満たすデータセットに正解した場合は $ 10 $ 点が与えられる。 ### Sample Explanation 1 $ 1 $ つ目のクエリについて、 $ A_6 $ が $ 0 $ に更新され $ A=(1,1,0,2,0,0) $ になります。 $ G $ には頂点 $ 1,4 $ の間と頂点 $ 2,4 $ の間と頂点 $ 4,5 $ の間と頂点 $ 4,6 $ の間に辺が張られるため、 $ G $ の最大マッチングの大きさは $ 1 $ です。 $ 2 $ つ目のクエリについて、 $ A_4 $ が $ 1 $ に更新され $ A=(1,1,0,1,0,0) $ になります。 $ G $ には頂点 $ 3,4 $ の間に辺が張られるため、 $ G $ の最大マッチングの大きさは $ 1 $ です。 ### Constraints - $ 2\leq N\leq 3\times 10^5 $ - $ 1\leq Q\leq 3\times 10^5 $ - $ 2\leq M\leq 3\times 10^5 $ - $ 0\leq A_i\lt M $ - $ 1\leq x_i\leq N $ - $ 0\leq y_i\lt M $ - 入力は全て整数