SP3897 CVXPOLY - Convex Polygons

题目描述

给定平面上 $n$ 个点,要求计算能够通过选择这些点的子集构成凸多边形的数量,要求多边形的顶点数至少为 $3$。具体来说,问题是从给定的 $n$ 个点中选择若干个点,构成一个凸多边形。所选的点集必须恰好能够构成一个凸多边形的顶点,且所构成的多边形的顶点数要至少为 $3$。特别地,输入满足以下条件: - 输入中的任意三点不共线。 - 输入中的任意两点坐标不同。 由于结果可能会非常大,要求输出结果对 $1234567$ 取模。

输入格式

第一行包含一个整数 $T$,表示测试用例的数量。 在每个测试用例中,第一行包含一个整数 $n$,表示该测试用例中的点的数量。 接下来的 $n$ 行每行包含两个用空格分隔的整数,表示第 $i$ 个点的坐标 $(x_i,y_i)$。$0\leq |x_i|,|y_i|\leq 10000$。

输出格式

输出共 $T$ 行,第 $i$ 行输出第 $i$ 个测试用例对应的答案。

说明/提示

对于第一个输入组:$T\leq 100,\,3\leq n\leq 10$。 对于第二个输入组:$T\leq 50,\,3\leq n\leq 100$。