atcoder#ABC203E. [ABC203E] White Pawn

[ABC203E] White Pawn

配点 : 500500

問題文

NN を正の整数とします。 行と列にそれぞれ 00 から 2N2N までの番号が付いた (2N+1)×(2N+1)(2N+1)\times (2N+1) のマス目があり、行 ii かつ列 jj に属するマスを (i,j)(i,j) で表します。

白のポーンが 11 つあり、最初 (0,N)(0,N) に置かれています。 黒のポーンは MM 個あり、ii 個目の黒のポーンは (Xi,Yi)(X_i, Y_i) に置かれています。

白のポーンが (i,j)(i,j) にあるとき、あなたは以下のいずれかの操作で白のポーンを動かすことができます。

  • 0i2N10\leq i\leq 2N-1, 0j2N0 \leq j\leq 2N を満たし、(i+1,j)(i+1,j) に黒のポーンが無いならば、白のポーンを (i+1,j)(i+1,j) に動かす。
  • 0i2N10\leq i\leq 2N-1, 0j2N10 \leq j\leq 2N-1 を満たし、(i+1,j+1)(i+1,j+1) に黒のポーンが有るならば、白のポーンを (i+1,j+1)(i+1,j+1) に動かす。
  • 0i2N10\leq i\leq 2N-1, 1j2N1 \leq j\leq 2N を満たし、(i+1,j1)(i+1,j-1) に黒のポーンが有るならば、白のポーンを (i+1,j1)(i+1,j-1) に動かす。

黒のポーンは動かすことができません。

この操作を繰り返した結果、(2N,Y)(2N,Y) に白のポーンが置かれている状態にできるような YY の値としてあり得るものの個数を求めてください。

制約

  • 1N1091 \leq N \leq 10^9
  • 0M2×1050 \leq M \leq 2\times 10^5
  • 1Xi2N1 \leq X_i \leq 2N
  • 0Yi2N0 \leq Y_i \leq 2N
  • (Xi,Yi)(Xj,Yj)(X_i, Y_i) \neq (X_j, Y_j) (ij)(i \neq j)
  • 入力は全て整数である。

入力

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

NN MM

X1X_1 Y1Y_1

::

XMX_M YMY_M

出力

答えを出力せよ。

2 4
1 1
1 2
2 0
4 2
3

(4,0)(4,0), (4,1)(4,1), (4,2)(4,2)33 つへはそれぞれ次のように動かせます:

  • (0,2)(1,1)(2,1)(3,1)(4,2)(0,2)\to (1,1)\to (2,1)\to (3,1)\to (4,2)
  • (0,2)(1,1)(2,1)(3,1)(4,1)(0,2)\to (1,1)\to (2,1)\to (3,1)\to (4,1)
  • (0,2)(1,1)(2,0)(3,0)(4,0)(0,2)\to (1,1)\to (2,0)\to (3,0)\to (4,0)

一方、 (4,3)(4,3)(4,4)(4,4) へは動かすことができません。 よって、 33 を出力します。

1 1
1 1
0

白のポーンを (0,1)(0,1) から動かすことはできません。