Problem description


Racjonalny płot
(racjonalny-plot)
Limit pamięci: 128 MB
Limit czasu: 6.00 s

Jasio chce postawić płot wokół swojej działki. Płot musi być racjonalny, a więc ustawiony w taki sposób, aby ogradzał jak największy teren. Jasio musi w tym celu musi wykopać na swojej działce dołki na słupki. Niestety działka leży na bardzo trudnym do kopania dziur terenie – parę centymetrów pod ziemią Zły Czarodziej Nabuchodonozor umieścił magiczną barierę, przez którą nie da się kopać.

Dobry Czarodziej Barabasz może ją jednak przerwać w niektórych spośród N wybranych punktach kratowych. Jak powszechnie wiadomo, Barabasz chodził na lekcje PP i za przebicie magicznej bariery w i-tym podanym punkcie żąda od Jasia Ci bajtalarów.

Zły Czarodziej Nabuchodonozor postanowił jeszcze bardziej utrudnić zadanie Jasiowi – co jakiś czas rzuca zaklęcie, które wzmacnia lub osłabia swoją magiczną barierę. Zaklęcie o numerze j zmienia moc magicznej bariery w (αj,βj)-obszarze kątowym w taki sposób, że od momentu j Barabasz żąda od Jasia o Dj więcej bajtalarów za przebicie magicznej bariery w każdym punkcie należącym do tego obszaru. Nabuchodonozor nigdy nie osłabi w pełni swojej magicznej bariery, więc zawsze koszt przebicia bariery w dowolnym punkcie będzie dodatni.

Pomóż Jasiowi wybrać moment na zbudowanie płotu, by musiał jak najmniej zapłacić Barabaszowi. Spośród momentów, w których koszt jest najtańszy należy wybrać najwcześniejszy.

Napisz program, który wczyta lokalizację możliwych przerwań bariery, początkowe koszty przerwania bariery w podanych punktach oraz opis zmian kosztów przerwania bariery i wyznaczy najwcześniejszy moment, w którym sumaryczny koszt przerwania bariery w punktach, które stworzą racjonalny płot będzie najtańszy i tenże najmniejszy koszt oraz ten moment wypisze na standardowe wyjście.

test test

Rysunek do testu przykładowego.

Uwaga

(α,β)-obszarem kątowym nazywamy wszystkie punkty (x,y), że miara kąta między osią OX, a prostą łączącą punkty (0,0) i (x,y) podana w radianach zawiera się w przedziale [α,β]. Punkt (0,0) należy do każdego obszaru kątowego.

Wejście

W pierwszym wierszu standardowego wejścia znajdują się dwie liczby naturalne N oraz M, oddzielone pojedynczym odstępem, oznaczające odpowiednio liczbę punktów kratowych, w których Barabasz może przerwać barierę oraz liczbę zaklęć rzuconych przez Nabuchodonozora. W każdym z kolejnych N wierszy znajdują się po trzy liczby całkowite Xi, Yi oraz Ci pooddzielane pojedynczymi odstępami, oznaczające odpowiednio: współrzędne i-tego punktu kratowego oraz koszt przerwania bariery w tym punkcie. Wszystkie podane punkty są parami różne. W każdym z kolejnych M wierszy znajdują się po dwie liczby rzeczywiste αj, βj i liczba naturalna Dj, pooddzielane pojedynczymi odstępami, oznaczające odpowiednio parametry obszaru kątowego, na który ma wpływ j-te zaklęcie i zmianę kosztu przebicia bariery w tym obszarze.

Wyjście

W pierwszym wierszu standardowego wyjścia należy wypisać dwie liczby naturalne oddzielone pojedynczym odstępem – najwcześniejszy moment, w którym przerwanie bariery w punktach, które stworzą racjonalny płot będzie najtańsze i najmniejszy możliwy sumaryczny koszt przerwania bariery w tych punktach.

Jeżeli najmniejszy możliwy koszt zostanie uzyskany przed pierwszym zaklęciem to należy przyjąć, że jest to moment 0.

Ograniczenia

1 ≤ N ≤ 100 000, 1 ≤ M ≤ 1 000 000,  − 1 000 000 ≤ Xi, Yi ≤ 1 000 000, 1 ≤ Ci ≤ 107,  − 107 ≤ Di ≤ 107, 0 ≤ αi, βi < 2π, αi i βi są podane z dokładnością do ośmiu cyfr po kropce dziesiętnej.

Dla każdego podanego na wejściu punktu kratowego (x,y) i każdego podanego obszaru kątowego różnica między miarą kąta między osią OX i prostą łączącą punkty (0,0) i (x,y), a dowolnym z ograniczeń obszaru kątowego będzie większa niż 10−6.

Przykład

Wejście Wyjście Wyjaśnienie
10 2
2 4 10
0 3 9
-1 2 2
2 2 5
4 2 10
0 0 9
3 0 8
5 0 4
2 -1 1
2 -2 3
6.11528938 1.18327252 -3
1.36947921 2.19810451 7
1 35

Na rysunku niebieskim kolorem zaznaczono obszar kątowy pierwszego zaklęcia, zielonym kolorem zaznaczono obszar kątowy drugiego zaklęcia. Czerwonym kolorem zaznaczono racjonalny płot. Punkty zostały ponumerowane w takiej kolejności, w jakiej pojawiły się na wejściu.