Programozó versenyek

Levelező Prog1 gyakorlati számonkérés, 2018. május 22.

2018. május 22. 9:05 – 2018. május 22. 12:05

Útvonalterv

A következő kirándulásunkhoz a Google Maps készített útvonalajánlatot. Az ajánlaton egyenlőségjelek ('=') jelzik az utat, nagybetű karakterek a köztes csomópontokat, kis 'o' karakterek pedig az út során érintett benzinkutakat.

Írjon programot, amely a standard bemenet első sorából egy legfeljebb 50 karakter hosszúságú sztringet olvas be állományvégjelig (EOF-ig)! A sztring a Google Maps egy, a fentebb leírtak alapján értelmezhető útvonalterve. A bemenet további sorai csomópont-azonosító nagybetűket tartalmaznak, soronként mindig két különbözőt, egy-egy szóközzel elválasztva. Ezek a nagybetűk biztosan előfordulnak az útvonaltervben is. A programjának azt kell meghatároznia, hogy a megadott csomópontokat végpontokként tekintve melyik irányból érhető el a legközelebbi benzinkút, ha az egyik megadott csomópontból a másik felé indulunk el! A kimenetre a kiindulásnak javasolt csomópontot és az elsőként érintett benzinkút távolságát kell kiírnia. Ha mindkét irányból azonos távolságra esik a legközelebbi benzinkút, akkor az elsőként megadott csomópont azonosítóját kell a kimenetre írnia! Ha nem lenne a két csomópont között egyetlen benzinkút sem, akkor a „No gas station!” szöveget írja a standard kimenetre!

Példa bemenet

  1. A==o=B==oCo=D===E
  2. A B
  3. B A
  4. B C
  5. B E
  6. D E
letöltés szöveges állományként

A példa bemenethez tartozó kimenet

  1. B 2
  2. B 2
  3. C 1
  4. B 3
  5. No gas station!
letöltés szöveges állományként
Debreceni Egyetem, Informatikai Kar, v. 2019.03.01.