PivotOJ

Permutation

시간 제한: 1000ms메모리 제한: 512MB출처: USACO 2021 Open GoldBOJ 21816

문제

Bessie has NN (3N403\le N\le 40) favorite distinct points on a 2D grid, no three of which are collinear. For each 1iN1\le i\le N, the ii-th point is denoted by two integers xix_i and yiy_i (0xi,yi1040\le x_i,y_i\le 10^4).

Bessie draws some segments between the points as follows.

  1. She chooses some permutation p1,p2,,pNp_1,p_2,\ldots,p_N of the NN points.
  2. She draws segments between p1p_1 and p2p_2, p2p_2 and p3p_3, and p3p_3 and p1p_1.
  3. Then for each integer ii from 44 to NN in order, she draws a line segment from pip_i to pjp_j for all j<ij<i such that the segment does not intersect any previously drawn segments (aside from at endpoints).

Bessie notices that for each ii, she drew exactly three new segments. Compute the number of permutations Bessie could have chosen on step 1 that would satisfy this property, modulo 109+710^9+7.

입력

The first line contains NN.

Followed by NN lines, each containing two space-separated integers xix_i and yiy_i.

출력

The number of permutations modulo 109+710^9+7.

예제

예제 1

입력
4
0 0
0 4
1 1
1 2
출력
0

예제 2

입력
4
0 0
0 4
4 0
1 1
출력
24

예제 3

입력
5
0 0
0 4
4 0
1 1
1 2
출력
96
코드를 제출하려면 로그인하세요.