#JXD2001. 强哥的骑士棋盘

强哥的骑士棋盘

问题陈述

强哥是个骑士棋迷,他正沉迷于在一个 N×NN \times N 的棋盘上布置棋子。这个棋盘一共有 N2N^2 个格子,每个格子要么是空的,要么已经有棋子驻扎。

已知棋盘上已经有 MM 个棋子守卫在特定位置,第 kk 个守卫棋子的位置是 (ak,bk)(a_k, b_k)。强哥想要挑战极限,在不被任何守卫棋子“吃掉”的情况下,再往棋盘上放更多的骑士棋子。

然而,骑士棋子的攻击方式十分特别: 一个骑士棋子放在 (i,j)(i, j) 格子上后,会攻击以下位置的敌人棋子(如果存在的话):

  1. (i+2,j+1)(i+2, j+1)
  2. (i+1,j+2)(i+1, j+2)
  3. (i1,j+2)(i-1, j+2)
  4. (i2,j+1)(i-2, j+1)
  5. (i2,j1)(i-2, j-1)
  6. (i1,j2)(i-1, j-2)
  7. (i+1,j2)(i+1, j-2)
  8. (i+2,j1)(i+2, j-1)

当然,棋盘的边界十分坚固,如果攻击超出棋盘范围,那招式就无效了。

现在,强哥想问:他最多还能在棋盘上布置多少个骑士棋子,同时保证新布置的每个棋子都不会被已有的守卫棋子攻击,也不会攻击已有的守卫棋子?

例如,放在 (4,4)(4,4) 位置上的棋子可以吃掉下图中蓝色所示位置上的棋子:

您可以将棋子放在几个位置上?

限制因素

  • 1N1091\leq N\leq10^9
  • 1M2×1051\leq M\leq2\times10^5
  • 1akN,1bkN (1kM)1\leq a_k\leq N,1\leq b_k\leq N\ (1\leq k\leq M)
  • (ak,bk)(al,bl) (1k<lM)(a_k,b_k)\neq(a_l,b_l)\ (1\leq k\lt l\leq M)
  • 所有输入值均为整数。

输入

输入内容由标准输入法提供,格式如下

NN MM

a1a_1 b1b_1

a2a_2 b2b_2

\vdots

aMa_M bMb_M

输出

打印在不被现有棋子吃掉的情况下可以放置棋子的空方格数。

8 6
1 4
2 1
3 8
4 5
5 2
8 3
38
1000000000 1
1 1
999999999999999997

101810 ^ {18} 唯一无法放置的方格是方格 (1,1),(2,3),(3,2)(1,1),(2,3),(3,2) 中的 33 个方格。

注意答案可能多于 2322 ^ {32}