#AT1803. E - White Pawn
E - White Pawn
E - 白兵
分数: $500$ 分
问题描述
设 $N$ 是一个正整数。 我们有一个 $(2N+1)\times (2N+1)$ 的网格,行的编号从 $0$ 到 $2N$,列的编号也从 $0$ 到 $2N$。令 $(i,j)$ 表示第 $i$ 行第 $j$ 列的方格。
我们有一个白兵,初始位置在 $(0, N)$。 我们还有 $M$ 个黑兵,第 $i$ 个黑兵的位置是 $(X_i, Y_i)$。
当白兵在 $(i, j)$ 位置时,你可以通过以下操作移动白兵:
- 如果 $0\leq i\leq 2N-1$,$0 \leq j\leq 2N$ 成立,而 $(i+1,j)$ 不包含黑兵,将白兵移动到 $(i+1, j)$。
- 如果 $0\leq i\leq 2N-1$,$0 \leq j\leq 2N-1$ 成立,而 $(i+1,j+1)$ 包含黑兵,将白兵移动到 $(i+1,j+1)$。
- 如果 $0\leq i\leq 2N-1$,$1 \leq j\leq 2N$ 成立,而 $(i+1,j-1)$ 包含黑兵,将白兵移动到 $(i+1,j-1)$。
不能移动黑兵。
计算能够使白兵位于 $(2N, Y)$ 位置的整数 $Y$ 的个数。
约束
- $1 \leq N \leq 10^9$
- $0 \leq M \leq 2\times 10^5$
- $1 \leq X_i \leq 2N$
- $0 \leq Y_i \leq 2N$
- $(X_i, Y_i) \neq (X_j, Y_j)$ $(i \neq j)$
- 输入中的所有值都是整数。
输入
输入数据从标准输入中获取,格式如下:
输出
打印答案。
2 4
1 1
1 2
2 0
4 2
3
我们可以通过以下操作将白兵移动到 $(4,0)$、$(4,1)$ 和 $(4,2)$:
- $(0,2)\to (1,1)\to (2,1)\to (3,1)\to (4,2)$
- $(0,2)\to (1,1)\to (2,1)\to (3,1)\to (4,1)$
- $(0,2)\to (1,1)\to (2,0)\to (3,0)\to (4,0)$
另一方面,我们无法将白兵移动到 $(4,3)$ 或 $(4,4)$。 因此,我们应该输出 $3$。
1 1
1 1
0
我们无法将白兵从 $(0,1)$ 移动。