Programozó versenyek

Programozási nyelvek 2, 2019. december 16., H14 ZH

2019. december 16. 14:15 – 2019. december 16. 16:00

Piroska gombászik

Piroska, útban a nagymamája felé, vidáman szökdécselve haladt az erdei ösvényen. Nézelődött jobbra-balra, s ha az út mentén észrevett egy-két gombát, leszakította, s a kosarába rakta őket. Az ösvény kanyargós és göröngyös volt, s sokszor előfordult, hogy Piroska kosarából egy-két kalapos finomság kirázkódott az útra. A kosarából kihullott gombákat Piroska nem vette észre, nem kapott utánuk, s így persze nem is tudta azokat elvinni a nagymamához.

Írjon programot, amely a standard bemenet soraiból a Piroska által a kosarába tett, s onnan kihullott gombák adatait olvassa állományvégjelig (EOF-ig)! A sorok felépítése a következő:

{+|-}:gombafajta:darab

A sor elején szereplő pluszjel („+”) jelzi azt, ha Piroska gombát rakott a kosarába, a mínuszjel („-”) pedig azt, ha Piroska kosarából éppen kihullott néhány gomba. A csupa angol kisbetűből álló gombafajta sztring azt írja le, hogy milyen gomba került a kosárba vagy hullott ki onnan. A darab egy pozitív egész szám, a kosárba kerülő vagy onnan kipotyogó gombák számát adja meg. Ha a kosárból kihulló gombákról van szó, akkor az értéke sohasem nagyobb az éppen a kosárban lévő adott fajtájú gombák számánál.

A programja írja a standard kimenetre a gombafajták szerint lexikografikusan növekvő sorrendben azt, hogy az egyes gombafajtákból hány gomba maradt Piroska kosarában, mire a nagymamájához ért! Azokat a gombafajtákat, amelyekből nem maradt egyetlen darab sem Piroska kosarában, ne írja ki! A kimenet pontos formátumát lásd a példában!

Példa bemenet

  1. +:csiperke:10
  2. +:ozlab:20
  3. +:rokagomba:30
  4. -:ozlab:5
  5. +:csiperke:5
  6. -:rokagomba:25
  7. +:pereszke:15
  8. -:rokagomba:5
letöltés szöveges állományként

A példa bemenethez tartozó kimenet

  1. csiperke:15
  2. ozlab:15
  3. pereszke:15
letöltés szöveges állományként
Debreceni Egyetem, Informatikai Kar, v. 2019.03.01.