cursa

Time limit: 0.05s Memory limit: 4MB Input: cursa.in Output: cursa.out


O cursă de maşini electrice prevăzute cu panouri solare are loc pe un traseu care traversează nn localităţi, numerotate în ordinea de pe traseu de la 11 la nn. Linia de start se află la kilometrul zero şi coincide cu începutul primei localităţi. Linia de sosire este la sfârşitul ultimei localităţi. Orice localitate, exceptând localitatea 11, începe la sfârşitul localităţii precedente. Prin urmare, pentru fiecare localitate i se cunoaşte distanţa did_i de la linia de start până la sfârşitul localităţii, exprimată în km\text{km}.
În momentul începerii competiţiei, din fiecare localitate există exact o maşină aliniată la linia de start. Maşinile au aceleaşi caracteristici, ca urmare se deplasează cu aceeaşi viteză, cu excepţia traversării localităţii din care provin unde, datorită avantajelor terenului propriu (suporteri dotaţi cu oglinzi, lămpi, etc.), îşi dublează instantaneu viteza până la ieşirea din localitate, apoi revin la viteza iniţială.
La concurs sunt invitate şi televiziunile locale, iar pentru telespectatori, sarea şi piperul sunt depăşirile, de aceea este important să reţinem informaţii despre acestea, pentru a le putea viziona în reluare. Se consideră depăşire situaţia în care o maşină ajunge din urmă o altă maşină, apoi trece în faţa acesteia.

Cerinţă

Cunoscând localităţile de pe traseu, scrieţi un program care tipăreşte ordinea sosirii maşinilor la linia de sosire, respectiv informaţii despre toate depăşirile efectuate în timpul concursului.

Date de intrare

Fişierul de intrare cursa.in va conţine pe prima linie numărul de localităţi nn. Urmează nn linii care descriu informaţii despre cele nn localităţi. Pe linia i+1i + 1 din fişier se află două numere naturale cc şi dd, separate prin spaţiu, cu semnificaţia că numărul de concurs al maşinii din localitatea ii este cc şi că localitatea ii se termină la dd kilometri faţă de linia de start.

Date de ieşire

Fişierul de ieşire cursa.out va conţine pe prima linie numerele de concurs ale maşinilor în ordinea sosirii lor, separate prin câte un spaţiu. În cazul în care există mai multe maşini care sosesc simultan la linia de sosire, acestea vor fi afişate în ordinea crescătoare a numerelor de concurs. Pe următoarele linii sunt descrise depăşirile, în ordinea crescătoare a localităţilor în care se produc. O depăşire este descrisă printr-o succesiune de valori de forma L c k m1 m2  mkL \ c \ k \ m_1 \ m_2 \ \dots \ m_k, cu semnificaţia că în localitatea LL maşina cu numărul de concurs cc depăşeşte kk maşini, maşinile depăşite fiind, în ordinea în care sunt depăşite, m1,m2,,mkm_1, m_2, \dots, m_k. Dacǎ sunt depǎşite în acelaşi moment două sau mai multe maşini, acestea se vor afişa în ordinea descrescǎtoare a numerelor de concurs.

Restricţii şi precizări

  • 2<n5002 \lt n \leq 500
  • Numerele de concurs ale maşinilor sunt numere naturale nenule distincte de maxim 33 cifre.
  • Distanţa dintre linia de start şi linia de sosire (sfârşitul ultimei localităţi) 30 000\leq 30 \ 000
  • Dacă prima cerinţă este rezolvată corect, se obţine 40%40\% din punctajul pe test. Dacă prima cerinţă este rezolvată corect, dar la afişarea depăşirilor maşinile dintr-o localitate nu sunt afişate în ordinea solicitată, se acordă 70%70\% din punctajul pe test. Punctajul integral se obţine pentru rezolvarea corectă a ambelor cerinţe.

Exemplu

cursa.in

5
10 5
66 7
99 15
35 23
70 34

cursa.out

70 35 99 10 66
3 99 2 66 10
4 35 2 66 10
5 70 4 66 10 99 35

Explicaţie

Prima localitate începe de la km 00 şi se termină la km 55 şi are maşina nr 1010. A doua localitate se află între km 575 - 7 şi are maşina nr 6666. A treia localitatea se află între km 7157 - 15 şi are maşina nr 9999. A patra între km 152315 - 23 are maşina nr 3535 şi ultima între km 233423 - 34 are maşina 7070.
Ordinea de sosire a maşinilor este: 70 35 99 10 6670 \ 35 \ 99 \ 10 \ 66. Maşinile 3535 şi 9999 termină cursa deodată, se enumeră în ordinea crescătoare a numerelor.
Depăşiri:
Localitatea 33: maşina 9999 va depăşi 22 maşini, în ordine maşinile 6666 apoi 1010.
Localitatea 44: maşina 3535 depăşeşte 22 maşini, pe 6666 şi 1010 şi ajunge pe 9999 fără să o depăşească.
Localitatea 55: maşina 7070 depăşeşte 44 maşini, în ordine pe 6666, 1010, apoi simultan pe 9999 şi 3535 aflate la egalitate (se enumeră în ordine descrescătoare).

Log in or sign up to be able to send submissions!