Programozó versenyek

Programozási nyelvek 2, 2019. május 21., K14 ZH

2019. május 21. 14:05 – 2019. május 21. 15:50

Tartozások

Az összetartó baráti társaságok mindenben osztoznak. Történik ez akkor is, amikor együtt utaznak valahova, s felváltva fizetik a számlákat. Ekkor – megfelelő bizalom esetén – elég hazatérve összesíteni azt, hogy ki mennyi fabatkát hitelezett a társai számára.

Írjon programot, amely a standard bemenetről állományvégjelig (EOF-ig)

hitelező;összeg;tartozó1[;tartozó2]…

formátumú sorokat olvas be, ahol a hitelező a számlát fizető személy neve (sztring), az összeg az egy főre jutó költség (egész), míg végül a tartozó barátok nevei (sztringek) következnek! A program összesítse a tartozásokat, és írja a tartozók nevének lexikografikus sorrendjében a kimenetre

tartozó => hitelező: összeg

formátumban azt, hogy melyik személy (tartozó) melyik társának (hitelező) mennyi fabatkával (összeg) tartozik! Az egyszerűség kedvéért most nem aggregáljuk a tartozásokat, azaz tartozhat az A személy B-nek úgy, hogy B is tartozik A-nak. Amennyiben egy személy több barátjának is tartozna, úgy a tartozásai a hitelezők nevének lexikografikus sorrendjében szerepeljenek!

Példa bemenet

  1. Aladar;20000;Bela;Cecilia
  2. Bela;10000;Aladar
  3. Denes;1000;Aladar
  4. Bela;20000;Aladar;Cecilia
letöltés szöveges állományként

A példa bemenethez tartozó kimenet

  1. Aladar => Bela: 30000
  2. Aladar => Denes: 1000
  3. Bela => Aladar: 20000
  4. Cecilia => Aladar: 20000
  5. Cecilia => Bela: 20000
letöltés szöveges állományként
Debreceni Egyetem, Informatikai Kar, v. 2019.03.01.