#2538. Asteroids

Asteroids

题目描述

Bessie\red{Bessie }想要驾驶她的宇宙飞船穿过一个危险的小行星带,该小行星带呈 N×N\red{N \times N }网格 (1<=N<=500)\red{(1 <= N <= 500) }的形状。网格包含 K\red{K }个小行星 (1<=K<=10,000)\red{(1 <= K <= 10,000),}它们方便地位于网格的格点。

幸运的是,Bessie\red{Bessie }拥有强大的武器,可以一枪将网格中任何给定行或列中的所有小行星蒸发。

这把武器很贵,所以她想少用。给定场地中所有小行星的位置,找出 Bessie\red{Bessie }需要发射的最小数量来消除所有小行星。

输入格式

1\red{1}行:两个整数N\red{N}K\red{K,}由单个空格分隔。

2...K+1\red{2...K+1}行:

每行包含两个空间分隔整数R\red{R}C\red{C(}1<=R\red{1<=R,}C<=N\red{C<=N)},分别表示小行星的行和列坐标。

输出格式

1\red{1}行:表示贝西必须拍摄的最小次数的整数。

样例

输入样例

3 4
1 1
1 3
2 2
3 2

输出样例

2

提示

输入详细信息:下图表示数据,其中"X\red{X}"是一个小行星和"."是空白:

X.X
.X.
.X.

输出细节: Bessie\red{Bessie }可能会在第 1\red{1 }行发射以摧毁 (1,1)\red{(1,1) }处的小行星,并且 (1,3)\red{(1,3),}然后她可能会向第 2\red{2 }列发射以摧毁小行星 在 (2,2)\red{(2,2) }(3,2)\red{(3,2) }处。