Trójkąty
Limit pamięci: 32 MB
Mamy danych
parami różnych punktów na płaszczyźnie (
).
Istnieje
trójkątów, których
wierzchołkami są pewne parami różne spośród tych punktów
(wliczając trójkąty zdegenerowane, tzn. takie, których wierzchołki
są współliniowe).
Chcemy obliczyć sumę powierzchni wszystkich trójkątów o wierzchołkach w
danych punktach.
Fragmenty płaszczyzny należące do wielu trójkątów liczymy wielokrotnie.
Przyjmujemy, że powierzchnia trójkątów zdegenerowanych (tzn. takich,
których wierzchołki są współliniowe) jest równa zero.
Zadanie
Napisz program, który:
-
wczyta ze standardowego wejścia współrzędne danych punktów
na płaszczyźnie,
-
wyznaczy sumę powierzchni wszystkich trójkątów o wierzchołkach
w danych punktach,
-
wypisze wynik na standardowe wyjście.
Wejście
W pierwszym wierszu wejścia znajduje się jedna liczba całkowita
(
), oznaczająca liczbę wybranych punktów.
Kolejne
wierszy zawiera po dwie liczby całkowite
oraz
(
), oddzielone pojedynczym
odstępem i oznaczające współrzędne
-tego punktu
(dla
).
Żadna para (uporządkowana) współrzędnych na wejściu nie powtarza się.
Wyjście
W pierwszym i jedynym wierszu wyjścia powinna się znajdować jedna
liczba rzeczywista, równa sumie powierzchni wszystkich trójkątów
o wierzchołkach w danych punktach.
Wynik powinien być wypisany z dokładnie jedną cyfrą po kropce dziesiętnej
i nie powinien się różnić od faktycznej wartości o więcej niż
.
Przykład
Dla danych wejściowych:
5
0 0
1 2
0 2
1 0
1 1

poprawną odpowiedzią jest:
7.0
Autor zadania: Jakub Radoszewski.