Atenţie! Aceasta este o versiune veche a paginii, scrisă la 2013-06-07 10:19:24.
Revizia anterioară   Revizia următoare  

 

Fişierul intrare/ieşire:timetravel.in, timetravel.outSursăAlgoritmiada 2013, Runda Finala
AutorCosmin GheorgheAdăugată defreak93Adrian Budau freak93
Timp execuţie pe test0.75 secLimită de memorie65536 kbytes
Scorul tăuN/ADificultatenormalnormalnormalnormalnormal

Vezi solutiile trimise | Statistici

Timetravel

Vreau sa scrieti voi

Date de intrare

M pe prima linie numarul de operatii.

Fiecare rand are prima valoare tipul operatie:

Daca e de tipul 1 se adauga insert(-inf, val(ccare se citeste))

Daca e de tipul 2 se adauga erase(time(care se citeste), val(care se citeste)) , nu se garanteaza ca val exista inca sau ca va exista vreodata, pot exista mai multe, se pastreaza toate

Daca e de tipul 3 se sterge un insert(-inf, val(care se citeste)), se garanteaza ca val exista

Daca e de tipul 4 se sterge exact un erase(time(care se citeste), val(care se citeste)), se garanteaza ca un erase(time, val) cu aceste valori exista

Daca e de tipul 5 se face query(time(care se citeste), val(care se citeste)) cum scrie pe forum.

Date de ieşire

În fişierul de ieşire timetravel.out se va afisa raspunsul la fiecare query.

Daca nu exista un astfel de numar se afiseaza "Time paradox" (fara ghilimele)

Restricţii

  • 1 <= M <= 500.000
  • 1 <= N <= 100.000 unde N e numarul de valori distincte cu care se apeleaza insert(-inf, val)
  • 1 <= time, val <= 1.000.000.000 pentru orice operatie

Exemplu

timetravel.intimetravel.out
19
5 -100 100
1 100
2 20 100
2 10 50
2 10 50
5 0 50
5 0 101
5 5 100
5 15 100
5 20 0
1 50
5 0 50
5 5 51
5 9 50
5 10 50
4 10 50
5 10 50
4 10 50
5 10 50
Time paradox
100
Time paradox
100
100
Time paradox
50
100
50
100
100
50
Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?