#P13959. [ICPC 2023 Nanjing R] 计数器

[ICPC 2023 Nanjing R] 计数器

题目描述

有一个计数器上有两个按钮,按下 + 按钮会让计数器的值增加 11,按下 c 按钮会让计数器的值变成 00。计数器一开始的值为 00

某人对计数器进行了 nn 次操作,每次操作是按下两个按钮中的某一个。给定 mm 条已知信息,其中第 ii 条已知信息可以用两个整数 aia_ibib_i 描述,表示第 aia_i 次操作后,计数器的值为 bib_i

问是否存在一种操作方式满足所有已知条件。

输入格式

有多组测试数据。第一行输入一个整数 TT 表示测试数据组数,对于每组测试数据:

第一行输入两个整数 nnmm1n1091 \le n \le 10^91m1051 \le m \le 10^5)表示操作总数和已知信息总数。

对于接下来 mm 行,第 ii 行输入两个整数 aia_ibib_i1ain1 \le a_i \le n0bi1090 \le b_i \le 10^9)表示已知第 aia_i 次操作后,计数器的值为 bib_i

保证所有数据 mm 之和不超过 5×1055 \times 10^5

输出格式

每组数据输出一行。若存在一种操作方式满足所有已知条件输出 Yes\texttt{Yes},否则输出 No\texttt{No}

3
7 4
4 0
2 2
7 1
5 1
3 2
2 2
3 1
3 1
3 100
Yes
No
No

提示

对于第一组样例数据,按 ++cc+c+ 的顺序按下按钮即可满足所有已知条件。

对于第二组样例数据,按下 33 次按钮共有 88 种方式,如下表所述。

$$\begin{array}{|c|c|c|c|c|c|c|} \hline \textbf{操作方式} & \textbf{第 2 次操作结果} & \textbf{第 3 次操作结果} & & \textbf{操作方式} & \textbf{第 2 次操作结果} & \textbf{第 3 次操作结果} \\ \hline ccc & 0 & 0 & & +cc & 0 & 0 \\ \hline cc+ & 0 & 1 & & +c+ & 0 & 1 \\ \hline c+c & 1 & 0 & & ++c & 2 & 0 \\ \hline c++ & 1 & 2 & & +++ & 2 & 3 \\ \hline \end{array}$$

没有任何操作方式满足所有已知条件。

对于第三组样例数据,按下 33 次按钮最多让计数器的值变成 33,不可能变成 100100