#P14827. [Bulgarian2015组队赛]squarepart
[Bulgarian2015组队赛]squarepart
题目描述
在一个边与整数网格线平行的正方形网格区域中,正方形边界上的网格节点按连续的自然数编号。编号从正方形左下角(西南角)的点 开始,沿逆时针方向进行,如原题图所示。

之后,这个正方形被从网格中切出。随后,又沿着一些连接已编号点的线段对正方形进行了切割。
请编写程序 squarepart,求这些切割线将正方形分成了多少个部分。
输入格式
从标准输入读入:
第一行输入两个自然数 ,用空格分隔。其中:
- 表示正方形边长,即每条边上单位网格线段的数量;
- 表示正方形从网格中切出之后,又沿连接已编号点的线段进行切割的次数。
接下来 行,每行输入两个自然数 ,用空格分隔,表示沿编号为 和 的两个点之间的线段进行了切割。
输出格式
输出一行一个自然数,表示进行这些切割后,正方形被分成的部分数量。
数据范围
所有切割线互不相同,并且每条切割线都包含正方形的内部点。不存在“伪切割”,即不会出现连接同一条边上两个点的线段。
- ;
- 。
样例
输入
8 6
23 15
19 28
1 18
30 14
9 21
17 1
输出
16
样例解释
该样例对应原题中的示意图。