Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

AL_27_10 - Pomiary meteorologiczne 2

Wdrażany przez CMOS system automatycznych pomiarów składników pogody jeszcze nie działa. Stacje pomiarowe są już rozmieszczone i znamy ich położenie we współrzędnych biegunowych względem stacji odbiorczej, ale nie ma jeszcze odpowiedniego oprogramowania do analizy uzyskiwanych danych. To właśnie zadanie, jakie postawiono przed Bajtłomiejem. W pierwszej fazie ta analiza dotyczyć ma jedynie pomiarów temperatury. Trzeba opracować program, który będzie rejestrował otrzymywane wyniki pomiarów oraz (na żądanie) szybko generował raport na temat maksymalnej, minimalnej i średniej temperatury w wybranym sektorze (w kształcie wycinka pierścienia kołowego).

Wejście

W pierwszej linii jedna liczba całkowita N oznaczająca liczbę stacji pomiarowych (1 ≤ N106).

W kolejnych N liniach po dwie liczby całkowite d i a określające położenie każdej ze stacji pomiarowych o numerach od 1 do N we współrzędnych biegunowych (najpierw odległość, a następnie kierunek w jakim znajduje się stacja pomiarowa względem stacji odbiorczej; < d1040a < 360). W jednym punkcie znajdować się może tylko jedna stacja.

Nastepnie nieokreślona liczba linii (nie więcej niż 2·105), a w każdej z nich jedna z dwóch informacji: zarejestrowany wynik pomiaru temperatury lub polecenie wygenerowania raportu.
Wynik pomiaru ma postać: P i t, gdzie i to numer stacji pomiarowej (1iN), a t - temperatura zmierzona z dokładnością do jednego miejsca po przecinku (-108t108) .
Polecenie wygenerowania raportu ma postać: R d1 d2 a1 a2, gdzie d1, d2, a1 i a2 to liczby całkowite oznaczające położenie sektora, którego ma dotyczyć raport (< d1d2105, 0a1, a2 < 360). Jeśli a1a2 to raport ma być stworzony na podstawie wyników ostatnich pomiarów ze stacji o współrzędnych (d,a), takich że ((d1dd2) ∧ (a1aa2)). Jeśli a1 > a2 to raport ma być stworzony na podstawie wyników ostatnich pomiarów ze stacji o współrzędnych (d,a), takich że ((d1dd2) ∧ ((aa1) ∨ (a ≤ a2))).

Wyjście

Dla każdego polecenia wygenerowania raportu w osobnej linii trzy wartości: min, max i avg, gdzie: min - minimalna temperatura zarejestrowana w sektorze, max - maksymalna temperatura zarejestrowana w sektorze, avg - średnia temperatura obliczona z ostatnich pomiarów ze stacji leżących w sektorze. Wartości min i max powinny zostać podane z dokładnością do jednego, a avg - do sześciu miejsc po przecinku. Jeśli w analizowanym sektorze nie zarejestrowano dotychczas żadnych pomiarów, należy na wyjściu wypisać 'BRAK DANYCH'.

Przykład

Wejście:
4
2 40
7 190
1 135
3 359
P 1 10.1
R 1 10 90 180
P 4 4.9
R 2 8 350 40
R 1 7 130 200
P 3 -5.5
P 2 11.0
R 1 3 0 359 
P 4 0.0
R 1 20 180 179
R 3 3 359 0
Wyjście:
BRAK DANYCH
4.9 10.1 7.500000
BRAK DANYCH
-5.5 10.1 3.166667
-5.5 11.0 3.900000
0.0 4.9 0.000000 

Dodane przez:Witold Długosz
Data dodania:2016-04-26
Limit czasu wykonania programu:1s-7s
Limit długości kodu źródłowego50000B
Limit pamięci:1536MB
Cluster: Cube (Intel G860)
Języki programowania:All except: ASM64 GOSU JS-MONKEY

© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.