|
|||
Van egy kis csavar a történetbenMekk Elek, az ezermester jártában-keltében mindenféle kacatot, limlomot összegyűjt magának, hátha jó hasznát veszi még egy későbbi munkája során. Kezdetben a 100 rekeszes szerszámosládája üres. Amikor Mekk Eleknek felajánlanak valamit, akkor a standard bemenetre a következő alakú sort írják:
Ekkor Mekk Elek megnézi, hogy van-e szabad hely a szerszámosládájában, s ha van, akkor annyit fogad el a felajánlott áruból, amennyi csak fér, szerszámosládájának szabad rekeszeibe egy-egy darab új árucikket rakva. Ha egy
alakú sort írva a standard bemenetre Mekk Elektől kérnek valamilyen cuccot, akkor ő megpróbál annyit adni, amennyit kérnek. Ha a kértnél kevesebb darabszámú áll rendelkezésére az adott portékából, akkor mindet odaadja. Az átadott apróságok kikerülnek a szerszámosládájából, s így felszabadul az általuk eddig foglalt hely a szerszámosládában. A bemeneten érkező sorokban az áru egy (akár szóköz karaktert is tartalmazó) sztring, míg a darab egy pozitív egész szám. Írjon programot, amely végigolvassa a standard bemenetről a Mekk Elek felé tett felajánlásokat és kéréseket állományvégjelig (EOF-ig), közben nyilvántartja, hogy Mekk Eleknek egy adott pillanatban miféle árui vannak, melyikből mennyi darab! A bemeneti adatok beolvasása után a programja írja a standard kimenetre Mekk Elek szerszámosládájának a tartalmát a példa kimenetben látható formában! Ha több kacat is lenne a szerszámosládájában, akkor azokat a nevük szerint lexikografikusan növekvő sorrendben jelenítse meg a kimeneten! Példa bemenet
A példa bemenethez tartozó kimenet
|
|||
Debreceni Egyetem, Informatikai Kar, v. 2024.09.30. |