atcoder#ABC202F. [ABC202F] Integer Convex Hull

[ABC202F] Integer Convex Hull

配点 : 600600

問題文

平面上に NN 個の点 P1,P2,,PNP_1, P_2, \dots, P_N があり、PiP_i の座標は (Xi,Yi)(X_i, Y_i) です。どの 33 点も同一直線上にないことが分かっています。

要素数が 33 以上であるような {P1,P2,,PN}\{ P_1, P_2, \dots, P_N \} の部分集合 SS に対し、SS凸包を次のように定義します。

  • SS に含まれる全ての点を周上または内部に含むような凸多角形のうち、面積が最小のもの。

凸包の面積が整数となるような SS の総数を (109+7)(10^9 + 7) で割ったあまりを求めてください。

制約

  • 3N803 \leq N \leq 80
  • 0Xi,Yi1040 \leq |X_i|, |Y_i| \leq 10^4
  • どの 33 点も同一直線上にない。
  • 入力は全て整数である。

入力

入力は以下の形式で標準入力から与えられる。

NN

X1X_1 Y1Y_1

X2X_2 Y2Y_2

\vdots

XNX_N YNY_N

出力

答えを出力せよ。(109+7)(10^9 + 7) で割ったあまりを求めることに注意すること。

4
0 0
1 2
0 1
1 0
2

{P1,P2,P4},{P2,P3,P4}\{ P_1, P_2, P_4 \}, \{ P_2, P_3, P_4 \} が条件を満たします。

23
-5255 7890
5823 7526
5485 -113
7302 5708
9149 2722
4904 -3918
8566 -3267
-3759 2474
-7286 -1043
-1230 1780
3377 -7044
-2596 -6003
5813 -9452
-9889 -7423
2377 1811
5351 4551
-1354 -9611
4244 1958
8864 -9889
507 -8923
6948 -5016
-6139 2769
4103 9241
4060436