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

Lássunk világot! (Java)

Az emberek imádnak utazni. Sokan, sokféle eszközzel vágnak neki a nagyvilágnak.

Az ön feladata, hogy írjon egy programot, amely feltérképezi, hogy ki mekkora távolság megtételével mely városokba jutott el, s őket a megtett távolságok alapján rangsorolja.

A standard bemenet egy-egy sora azt írja le, hogy egy utazó mekkora táv leküzdésével jutott el egy kiindulási helyről egy célhelyre:

utazó_neve:távolság:indulási_hely--érkezési_hely

Sem az utazók nevei, sem az indulási és érkezési helyek megnevezései nem tartalmaznak kettőspont karaktert, és nem tartalmazzák a -- többkarakteres szimbólumot sem, ezek az utazók neveinek, a távolságoknak, valamint az indulási és érkezési helyeknek az elválasztására szolgálnak.

A program írja a standard kimenetre a leküzdött távolságok összege alapján csökkenő sorba rendezve az utazók neveit, a példa kimenetben látható formában! Ha több utazó is azonos távolságot küzdött volna le utazásai során, akkor őket neveik alapján lexikografikusan növekvő sorban írja a kimenetre! Minden utazó neve mellett szerepeljen zárójelben a leküzdött távolság, valamint a távolságértéktől egy kettősponttal és egy szóköz karakterrel elválasztva azoknak a városoknak a listája, ahová az utazó biztosan eljutott! Ebben a listában a városok nevei lexikografikusan növekvő sorrendben jelenjenek meg, egymástól egy vessző és egy szóköz karakterrel elválasztva!

Példa bemenet

  1. Janos:231:Debrecen--Budapest
  2. Janos:1927:Budapest--Barcelona
  3. Peter:392:Munchen--Frankfurt
  4. Vivien:243:Budapest--Becs
  5. Vivien:243:Becs--Budapest
letöltés szöveges állományként

A példa bemenethez tartozó kimenet

  1. Janos (2158): Barcelona, Budapest, Debrecen
  2. Vivien (486): Becs, Budapest
  3. Peter (392): Frankfurt, Munchen
letöltés szöveges állományként
Debreceni Egyetem, Informatikai Kar, v. 2024.09.30.