Pancake
平面上有一个包含 个顶点的简单多边形,其中 。请画一条不经过任何顶点的直线,将该多边形分割成若干个多边形。求最多能够分割出多少个多边形。
输入包含多组测试数据。
输入格式
每组测试数据的第一行包含一个整数 ,表示简单多边形的顶点数。
接下来 行,每行包含两个整数 、,表示一个顶点的坐标。顶点按照多边形边界上的顺序给出,相邻顶点之间以及第 个顶点与第 个顶点之间均构成多边形的一条边。
输入以单独一行的 结束,该行不属于任何一组测试数据。
输出格式
对于每组测试数据,输出一行一个整数,表示一条不经过任何顶点的直线最多能够将该多边形分割成多少个多边形。
样例输入
5
0 0
2 0
2 2
1 1
0 2
0
样例输出
3
数据范围
- ;
- 所有顶点坐标均为合法的有符号整数,并保证相关几何运算可以准确完成;
- 输入的多边形为简单多边形,顶点按照多边形边界上的顺序给出。
来源与许可
本题题面与测试数据整理自 BZOJ。
样例 1
输入
5
0 0
2 0
2 2
1 1
0 2
0
输出
3