Prihlásenie Registrácia  

C - Veľká cena F1

Časový limit: 1s, Pamäťový limit: 64MiB

Programovacie jazyky: Pascal, C, C++, Java, C++0x, Python 3.4, Python 3.11

Počet bodov: 1

[ Pošli riešenie ] [ Tvoje riešenia ] [ Správne riešenia ] [ Vzorové riešenie ]

Veľká cena F1 je súťaž niekoľkých monopostov, ktorá sa koná na jednom z okruhov. Štartovacia čiara okruhu je totožná s cieľovou čiarou. Súťaží sa na stanovený počet kôl (víťazom je ten pilot, ktorý ako prvý odjazdí tento počet kôl).
Monoposty sa počas pretekov predbiehajú a tým si vymieňajú svoje poradie. Dokonca sa bežne stáva, že najrýchlejší pretekári predbehnú pomalších aj viac ako o jedno kolo. Niekedy tiež dochádza ku kolíziám, alebo technickým poruchám a v tom prípade pilot preteky skončí.
To všetko vnáša trochu zmätku pre divákov, kedže nie je ľahké určiť skutočné poradie pilotov.

Úloha

Na štartovej čiare je umiestnené zariadenie, ktorého úlohou je zaznamenávať číslo monopostu, ktoré pretne cieľovú čiaru. Máme k dispozícii výpis zo zariadenia na štartovej čiare. Z tohto výpisu určte priebežné poradie pilotov.

Vstup

Prvý riadok vstupu bude obsahovať počet pretekárov na štarte (1≤N≤50).
Ďalších N riadkov bude obsahovať číslo a meno pilota oddelené medzerou. Piloti majú navzájom rôzne čísla z intervalu 1..N+1 tak, aby žiaden pretekár nemal číslo 13. Žiaden pilot nemá meno dlhšie ako 50 znakov (meno sa skladá z malých/veľkých písmen a medzier. Prvý a posledný znak mena je vždy písmeno.).
Ďalej bude nasledovať riadok s číslom 1≤M≤1000 = dĺžka postupnosti z nášho zariadenia. V ďalšom riadku bude výpis z nášho zariadenia (teda čísla pretekárov v poradí v ktorom prechádzali cieľom). Môžete predpokladať, že každý pilot aspoň raz prešiel štartovou čiarou.

Výstup

Výstupom má byť N riadkov, ktoré budú zodpovedať priebežnému poradiu. Pilot, ktorý odjazdil viac kôl, má byť v poradí pred pilotom, ktorý ich odjazdil menej. Ak dvaja piloti odjazdili rovnako veľa kôl, v priebežnom poradí bude mať lepšiu pozíciu ten z nich, ktorý v poslednom kole preťal cieľovú čiaru ako prvý.

Príklad

Príklad vstupu

20
1 Michael Schumacher
2 Rubens Barrichello
3 Jenson Button
4 Takuma Sato
5 Fernando Alonso
6 Giancarlo Fisichella
7 Mark Webber
8 Nick Heidfeld
9 Kimi Raikkonen
10 Juan Pablo Montoya
11 Jacques Villeneuve
12 Felipe Massa
14 David Coulthard
15 Christian Klien
16 Ralf Schumacher
17 Jarno Trulli
18 Narain Karthikeyan
19 Tiago Monteiro
20 Christijan Albers
21 Robert Doornbos
27
1 4 3 17 2 6 5 8 9 7 10 14 12 11 16 18 19 15 21 20 5 9 1 3 6 11 4

Príklad výstupu

Fernando Alonso
Kimi Raikkonen
Michael Schumacher
Jenson Button
Giancarlo Fisichella
Jacques Villeneuve
Takuma Sato
Jarno Trulli
Rubens Barrichello
Nick Heidfeld
Mark Webber
Juan Pablo Montoya
David Coulthard
Felipe Massa
Ralf Schumacher
Narain Karthikeyan
Tiago Monteiro
Christian Klien
Robert Doornbos
Christijan Albers
Poznámka: Pretekári s číslami 5 9 1 3 6 11 4 majú odjazdené už 2 kolá, ostatní zatiaľ len jedno.