Programozó versenyek

Magas szintű programozási nyelvek 2, 2017. január 3., K14 ZH

2017. január 3. 14:10 – 2017. január 3. 16:00

Stop (Java)

Autóval átszelni Európát? Merész gondolat, de nem lehetetlen. Különösen nem akkor, ha nem az ember saját autójáról van szó. Hanem valaki máséról, akit megkérünk, hogy vigyen el minket hosszabb-rövidebb szakaszokon magával, ha már éppen úgyis egyfelé tart az utunk. Az alábbi feladat ezt a problémát boncolgatja.

Az ön feladata, hogy kimutatást készítsen arról, hogy egészen pontosan kik voltak azok, akik olyan autóval közlekedtek, amellyel a legtöbben utaztak. Ehhez a rendelkezésére áll egy szöveges állomány, amelynek a nevét a programja első parancssori argumentumként fogja megkapni, és amelynek sorai a következőképpen épülnek fel:

utazó_neve:rendszám->honnan--hova[;rendszám->honnan--hova]…

Sem az utazók nevei, sem a kiindulóhelyek és célhelyek nem tartalmaznak kettőspont vagy pontosvessző karaktert, és nem tartalmazzák sem a --, sem pedig a -> többkarakteres szimbólumot, ezek az utazók neveinek, a rendszámoknak, illetve a kiindulási és célhelyeknek az elválasztására szolgálnak. Feltételezhetjük, hogy az utazók nevei egyediek, továbbá egyetlen utazó sem utazott ugyanazzal a járművel egynél többször.

A program írja a standard kimenetre lexikografikusan növekvő sorrendben azoknak az autóknak a rendszámait, amelyeket a legtöbb utazó vett igénybe az utazások során! Minden rendszámot követően, attól egy kettőspont és egy szóköz karakterrel elválasztva szerepeljen ott azoknak az utazóknak a neve is, akik utaztak az adott járművel! Ha egy járművel egynél több ember is utazott volna, akkor ezeknek az utazóknak a nevét lexikografikusan növekvő sorrendben, egymástól egy vessző és egy szóköz karakterrel elválasztva írja a standard kimenetre! Ügyeljen rá, hogy a sorok végén ne álljon semmilyen felesleges karakter (se szóköz, se vessző, se ezek kombinációja)!

Példa állomány (sample.txt)

  1. Janos:CXK-962->Debrecen--Budapest;FGZ-319->Budapest--Barcelona
  2. Peter:FGZ-319->Munchen--Frankfurt
  3. Vivien:KLM-854->Budapest--Becs;CXK-962->Becs--Budapest
letöltés szöveges állományként

Parancssori argumentumok

  1. sample.txt
letöltés szöveges állományként

A futtatás eredménye a standard kimeneten

  1. CXK-962: Janos, Vivien
  2. FGZ-319: Janos, Peter
letöltés szöveges állományként
Debreceni Egyetem, Informatikai Kar, v. 2019.03.01.