Atenţie! Aceasta este o versiune veche a paginii, scrisă la 2009-04-01 21:30:44.
Revizia anterioară   Revizia următoare  

 

Fişierul intrare/ieşire:votare.in, votare.outSursă.campion 2009 runda a-11-a grupa Large
AutorMircea DimaAdăugată deblasterzMircea Dima blasterz
Timp execuţie pe test0.125 secLimită de memorie20480 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

Votare

Pe planeta Marte astazi se voteaza. Martienii sunt imprastiati pe suprafata planetei, pozitiile lor fiind specificate prin coordonatele carteziene ale punctului de pe harta in care se afla. Cand si cand se petrec tot felul de evenimente: dispare un martian (pleaca la vot), apare un martian (se intoarce de la vot) sau un martian se intreaba la ce distanta se afla cel mai apropiat martian (pentru a-l intreba daca a votat sau nu).

Cerinţă

Cunoscand secventa evenimentelor, sa se afle raspunsurile la intrebarile martienilor.

Date de intrare

Fisierul de intrare votare.in contine pe prima linie numarul natural N, reprezentand numarul de eveniment. Urmatoarele N linii contin evenimentele, cate un eveniment pe cate o linie, in ordinea in care acestea se produc. Un eveniment este descris prin 3 numere intregi separate prin spatii astfel:

Eveniment Semnificatie
0 x y apare un martian in pozitia de coordonate (x,y)
1 x y dispare martianul din pozitia de coordonate (x,y)
2 x y martianul din pozitia de coordonate (x,y) intreaba care este distanta fata de cel mai apropiat martian

Date de ieşire

Fisierul de iesire votare.out va contine in ordine raspunsurile la intrebarile martienilor (evenimente de forma 2 x y), cate un raspuns pe o linie.

Restricţii

*1 <= N <= 100 000
*Toate coordonatele din fisierul de intrare sunt numere intregi nenule in intervalul [-32000, +32000]
*Doi martieni nu se pot afla simultan in aceeasi pozitie
Distanta dintre 2 puncte (x0,y0) si (x1,y1) se defineste ca fiind (x0-x1)(x0-x1)+(y0-y1)*(y0-y1)
*Daca nu exista niciun martian se va afisa raspunsul -1

Exemplu

votare.invotare.out
9
0 5 6
0 7 9
0 12 9
2 1 1
0 5 3
0 1 4
2 2 4
1 5 6
2 1 1
41
1
9
Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?