Екі өлшемді жазықтықта $n$ нүкте $p_i$ берілген, мұндағы $p_i$ нүктесі $(x_i, y_i)$ координаттарында орналасқан. Ешқандай екі нүкте бір орында жатпайтынына және ешқандай үш нүкте бір түзудің бойында жатпайтынына кепілдік беріледі.
Осы үш нүктені қамтитын кез келген ішкі жиынның дөңес қабығы (convex hull) үшбұрыш болатындай етіп, берілген жиыннан үш нүктені таңдау тәсілдерінің санын табыңыз.
Кіріс деректер
Бірінші жолда бір бүтін сан $n$ — нүктелер саны берілген. Келесі $n$ жолдың әрқайсысында екі бүтін сан $x_i$ және $y_i$ — $p_i$ нүктесінің координаттары берілген.
Шығыс деректер
Бір бүтін санды — осы үш нүктені қамтитын кез келген ішкі жиынның дөңес қабығы үшбұрыш болатындай етіп, берілген жиыннан үш нүктені таңдау тәсілдерінің санын шығарыңыз.
Шектеулер
$3 \le n \le 2000$, $|x_i|, |y_i| \le 10^9$, ешқандай екі нүкте бір орында орналаспаған, ешқандай үш нүкте бір түзудің бойында жатпайды.
Мысалдар
Кіріс деректер 1
7 2 7 0 9 -2 -2 9 4 3 3 -8 -10 -2 -3
Шығыс деректер 1
2
Кіріс деректер 2
4 -1 -1 1 -1 0 1 0 0
Шығыс деректер 2
4
Кіріс деректер 3
7 -50 -33 50 -31 -93 98 -47 -59 16 -35 79 -25 -75 41
Шығыс деректер 3
15
Ескертпе
Бірінші мысалда берілген нүктелер төмендегі суретте көрсетілгендей орналасқан.
Бірінші мысалда үш нүктені таңдаудың келесі екі тәсілі шартты қанағаттандырады: $\{p_1, p_4, p_6\}$, $\{p_2, p_4, p_6\}$.
Екінші мысалда берілген нүктелер төмендегі суретте көрсетілгендей орналасқан.
Екінші мысалда үш нүктені таңдаудың келесі төрт тәсілі шартты қанағаттандырады: $\{p_1, p_2, p_3\}$, $\{p_1, p_2, p_4\}$, $\{p_1, p_3, p_4\}$, $\{p_2, p_3, p_4\}$.