Kaksiulotteisessa tasossa on $n$ pistettä $p_i$, missä piste $p_i$ sijaitsee koordinaateissa $(x_i, y_i)$. On taattu, että mitkään kaksi pistettä eivät ole samassa paikassa eivätkä mitkään kolme pistettä ole samalla suoralla.
Etsi tapojen lukumäärä valita kolme pistettä annetusta joukosta siten, että minkä tahansa nämä kolme pistettä sisältävän osajoukon konveksi peite (convex hull) on kolmio.
Syöte
Ensimmäinen rivi sisältää kokonaisluvun $n$ – pisteiden lukumäärän. Kukin seuraavista $n$ rivistä sisältää kaksi kokonaislukua $x_i$ ja $y_i$ – pisteen $p_i$ koordinaatit.
Tuloste
Tulosta yksi kokonaisluku – tapojen lukumäärä valita kolme pistettä annetusta joukosta siten, että minkä tahansa nämä kolme pistettä sisältävän osajoukon konveksi peite on kolmio.
Rajoitukset
$3 \le n \le 2000$, $|x_i|, |y_i| \le 10^9$, mitkään kaksi pistettä eivät ole samassa paikassa, mitkään kolme pistettä eivät ole samalla suoralla.
Esimerkit
Syöte 1
7 2 7 0 9 -2 -2 9 4 3 3 -8 -10 -2 -3
Tuloste 1
2
Syöte 2
4 -1 -1 1 -1 0 1 0 0
Tuloste 2
4
Syöte 3
7 -50 -33 50 -31 -93 98 -47 -59 16 -35 79 -25 -75 41
Tuloste 3
15
Huomautus
Ensimmäisen esimerkin pisteet ovat sijoittuneet alla olevan kuvan mukaisesti.
Ensimmäisessä esimerkissä seuraavat kaksi tapaa valita kolme pistettä täyttävät ehdon: $\{p_1, p_4, p_6\}$, $\{p_2, p_4, p_6\}$.
Toisen esimerkin pisteet ovat sijoittuneet alla olevan kuvan mukaisesti.
Toisessa esimerkissä seuraavat neljä tapaa valita kolme pistettä täyttävät ehdon: $\{p_1, p_2, p_3\}$, $\{p_1, p_2, p_4\}$, $\{p_1, p_3, p_4\}$, $\{p_2, p_3, p_4\}$.