4488: 乌蒙大象

内存限制:256 MB 时间限制:8 S
题面:传统 评测方式:文本比较 上传者:
提交:1 通过:1

题目描述

frost_ice 很喜欢乌蒙。

如图所示,在二维平面中,88 个点 A, B, C, D, E, F, G, HA,B,C,D,E,F,G,H 形成一个乌蒙当且仅当:
figure

  • A, B, C, D, E, F, G, HA,B,C,D,E,F,G,H 八个点按逆时针构成简单凸多边形。
  • \angle{ABC} = \angle{BCD} = \angle{CDE} = \angle{DEF} = \angle{EFG} = \angle{FGH} = \angle{GHA} = \angle{HAB} = 135^\circABC=BCD=CDE=DEF=EFG=FGH=GHA=HAB=135
  • | AB | = | CD | = | EF | = | GH |AB=CD=EF=GH
  • | BC | = | DE | = | FG | = | HA |BC=DE=FG=HA

其中,简单多边形是平面中由线段构成的闭合曲线,这些线段首尾相连,除了因连接而共用的线段端点,任何两个线段都不能彼此相交。在此基础上,如果一个简单多边形还满足每个内角都严格小于 180^\circ180 ,则我们称它为简单凸多边形。

frost_ice 想知道,给定 nn 个在二维平面中的点,有多少种方案可以选择 88 个不相同的点组成乌蒙。其中,两个乌蒙不相同当且仅当存在至少一个选中点的坐标不同。

输入格式

第一行包含一个整数 TT1 \leq T \leq 1001T100),代表测试数据组数。对于每组测试数据:

  • 第一行包含一个整数 nn1 \leq n \leq 30001n3000),代表点的个数。
  • 接下来的 nn 行中,第 ii 行包含两个整数 x_i, y_ixi,yi-10^8 \leq x_i, y_i \leq 10^8108xi,yi108),代表第 ii 个点的坐标。

输入数据保证 \sum n \leq 6 \cdot 10^4n6104,且单组测试数据中不存在坐标相同的两个点。

输出格式

对于每组测试数据,输出一行一个整数,代表组成乌蒙的方案数。

输入样例 复制

2
8
8 3
3 8
-3 8
-8 3
-3 -8
-8 -3
8 -3
3 -8
20
0 25
0 -25
25 0
-25 0
7 24
15 20
20 15
24 7
7 -24
15 -20
20 -15
24 -7
-7 -24
-15 -20
-20 -15
-24 -7
-7 24
-15 20
-20 15
-24 7

输出样例 复制

1
10