#arc0182. [arc018_2]格子点と整数

[arc018_2]格子点と整数

题目描述

诸君,我喜欢整数!

我喜欢格点!

我喜欢面积!

我喜欢三角形!

我最喜欢在坐标平面上,顶点全在格点上,面积是整数的三角形!

一想到在格点集合中任选三个点使其组成的三角形面积为整数,我就心跳不已。

但是格点太多了,所以数符合条件的三角形个数太麻烦了。

有能力的程序猿请务必代我数一下!

给出NN个格点。从中任意选出33个点作为三角形顶点。请编写程序求出其中面积为整数的三角形的个数。面积为00的三角形不能算作三角形!

顺带一提,格点即坐标平面上的点(x,y)(x,y),其中xxyy都是整数。

输入

输入按以下形式。

N 
x1 y1
x2 y2
:
xN yN
  • 第一行为表示格点个数的一个整数N(3N100)N(3≤N≤100)
  • 从第二行开始的NN行,每行为用一个空格分开的两个整数。(xi,yi)(1xi,yi109)(x_i,y_i)(1≤x_i,y_i≤10^9)表示第ii个格点的位置。同一个格点不会出现两次。((如果iji≠j那么(xi,yi)(xj,yj)(x_i,y_i)≠(x_j,y_j) ))

输出

输出一行从NN个格点中选出任意33个作为顶点构成面积为整数的三角形的个数。别忘了结尾换行。

样例

输入1

3
1 1
1 2
3 1

输出1

1

选取这三个点能构成面积为11的三角形。

输入2

3
1 1
1 2
2 1

输出2

0

选取这三个点所构成的三角形的面积为0.50.5,不是整数。

输入3

3
1 1
2 2
3 3

输出3

0

这三个点在一条直线上。不能构成三角形。

输入4

8
3 1
4 1
5 9
2 6
5 3
5 8
9 7
9 3

输出4

38