#P005942. 几何课

几何课

题目描述

平面上有 NN 个互不重合的点。在任意两个点之间连接一条线段,可以得到若干条线段。

如果两条线段所在直线的方向相同,则称它们互相平行。重合的两条直线也视为互相平行。

请计算这些线段中一共有多少种不同的方向。也就是说,需要从中选出尽可能多的线段,使任意两条被选中的线段都不平行,并输出最多能选出的线段数量。

输入格式

第一行包含一个整数 NN,表示点的数量。

接下来 NN 行,每行包含两个整数 Xi,YiX_i,Y_i,表示第 ii 个点的坐标。

输出格式

输出一个整数,表示最多能选出的两两不平行的线段数量。

样例

4
3 2
2 3
-2 -1
-1 -2
4
4
-1 1
-2 0
0 0
1 1
4
8
-1 -2
0 1
-3 -4
5 3
-4 -1
2 5
1 0
3 -5
25

数据范围与提示

  • 2N2002 \le N \le 200
  • 1000Xi,Yi1000-1000 \le X_i,Y_i \le 1000
  • 任意两个点的坐标不同。