AT_pakencamp_2023_day3_g MOD
Description
$ T $ 個のテストケースについて、以下の問題を解いてください。
長さ $ N $ の数列 $ A=(A_1,A_2,\ldots,A_N) $ があり、現在全ての $ 1\leq i\leq N $ について $ A_i=0 $ です。
あなたの目標は全ての $ 1\leq i\leq N $ について $ A_i\equiv R_i\pmod{M} $ が成立するようにすることです。これを実現させるため、以下の操作を任意の回数行うことができます。(一度も行わないこともできます。)
- $ 1\leq j\leq K $ を満たす整数 $ j $ を選ぶ。 $ A $ の $ P_j $ 番目の要素に $ 1 $ を加える。さらに、 $ A $ の $ Q_j $ 番目の要素に $ 1 $ を加える。
目標が達成可能かどうかを判定してください。
Input Format
入力は以下の形式で標準入力から与えられます。
> $ T $ $ \mathrm{test}_1 $ $ \mathrm{test}_2 $ $ \vdots $ $ \mathrm{test}_T $
ここで、 $ \mathrm{test}_i $ は $ i $ 番目のテストケースの情報を表し、次の形式で与えられます。
> $ N $ $ M $ $ K $ $ R_1 $ $ R_2 $ $ \ldots $ $ R_N $ $ P_1 $ $ Q_1 $ $ P_2 $ $ Q_2 $ $ \vdots $ $ P_K $ $ Q_K $
Output Format
各テストケースに対する答えを改行区切りで順に出力してください。
それぞれのテストケースについて、目標が達成可能な場合は `Yes` を、達成不可能な場合は `No` を出力してください。
Explanation/Hint
### Sample Explanation 1
$ 1 $ 番目のテストケースでは、次の順序で操作を行うことで目標が達成できます。
1. $ j=2 $ とする。 $ A=(1,0,0,0,0,1) $ になる。
2. $ j=1 $ とする。 $ A=(2,1,0,0,0,1) $ になる。
3. $ j=2 $ とする。 $ A=(3,1,0,0,0,2) $ になる。
4. $ j=3 $ とする。 $ A=(3,1,0,1,1,2) $ になる。
5. $ j=5 $ とする。 $ A=(3,1,0,1,2,3) $ になる。
最終的に全ての $ 1\leq i\leq 6 $ について $ A_i\equiv R_i\pmod{3} $ とできていることが確認できます。
### Constraints
- $ 1\leq T\leq 2\times 10^5 $
- $ 1\leq N\leq 2\times 10^5 $
- $ 2\leq M\leq 10^9 $
- $ 1\leq K\leq 2\times 10^5 $
- $ 0\leq R_i\lt M $
- $ 1\leq P_i\leq N $
- $ 1\leq Q_i\leq N $
- $ 1 $ つの入力に含まれる $ N $ の総和、 $ K $ の総和はそれぞれ $ 2\times 10^5 $ を超えない