Autor: Rafał Witkowski
Treść
Jaś jest grzecznym chłopcem mieszkającym w Bajtocji. Jak każdy grzeczny
chłopiec, Jaś dostaje od rodziców kieszonkowe. Rodzice co jakiś czas
dają mu jakąś monetę, żeby mógł ją wrzucić do swojej skarbonki.
System monetarny Bajtocji nie jest takim zwykłem systemem monetarnym.
Posiadają oni nominały na wszystkie wartości swoich pieniędzy, które są
liczbami naturalnymi niewiększymi niż 2000000000, przy czym nominały do
10000 włącznie są monetami, a nominały wyższe są banknotami. Oprócz
tego pieniądze te mają bardzo ciekawą własność - otóż monety mają
średnicę równą swojej wartości (np. moneta o nominale 3 ma średnicę
równą 3, nominał 15 to średnica 15), a banknoty mają z kolei
powierzchnię równą swojej wartości (np. banknot o nominale 10200 ma
powierzchnię 10200, nominał 888888 to powierzchnia 888888).
Każdą monetę, którą Jaś dostaje natychmiast wrzuca do skarbonki, przy
okazji zapamiętując monety jakich nominałów ma obecnie w skarbonce.
Robi to dlatego, że kiedy co jakiś czas rodzice dostają wypłatę
(wypłata w Bajtocji polega na wydaniu rodzicom Jasia po jednej monecie
i jednym banknocie z każdego nominału), Jasiu, jeśli tylko może,
wykonuje pewną operację, dzięki której chce zwiększyć swoje nominały.
Mianowicie robi w skarbonce dziurkę, w którą zmieszczą się tylko monety
o minimalnym nominale. Następnie wytrząsa ze skarbonki wszystkie monety
o tym nominale. Ponieważ Jaś akurat uczy się tabliczki mnożenia, więc
nie wytrząsa ze swojej skarbonki żadnych innych monet, tylko zanosi, te
które mu wyleciały i zanosi do mamy, żeby wymienić je na banknot lub
monetę o większym nominale o tej samej wartości, co monety, które daje
mamie. Wyjątkiem jest sytuacja, kiedy Jaś może wytrząsnąć tylko jedną
monetę o najniższym nominale, bo więcej takich nie ma. Wtedy wyciąga ze
skarbonki jeszcze jedną monetę o najniższym nominale i zanosi je
wymienić do mamy, przypominając sobie wtedy tabliczkę dodawania, której
już wcześniej się nauczył.
Czasami Jaś dostaje od mamy monety o wyższym nominale, ale czasami
dostaje także banknoty. Jaś jest wtedy bardzo dumny i za każdym razem,
jak przychodzą do niego koledzy z klasy pokazuje im największy banknot,
jaki ma. Niestety czasami nie ma żadnego banknotu i wtedy jest mu
trochę wstyd.
Zadanie
Jaś ma pustą skarbonkę. Wiedząc kiedy dostaje jakie monety od mamy,
kiedy mama ma wypłatę, oraz kiedy przychodzą do niego koledzy, ustal
jakie banknoty, jeśli jakieś ma, będzie pokazywał swoim kolegom.
Specyfikacja wejścia
W pierwszym wierszu wejścia znajduje się jedna liczba całkowita,
oznaczająca liczbę zestawów danych, które za chwilę pojawią się na
wejściu.
Zestaw danych obejmuje ciąg znaków ze zbioru {1,2,3,...,10000,w,k},
gdzie liczby od 1 do 10000 są nominałami monet, które Jaś dostaje od
mamy, w oznacza, że mama
dostaje wypłatę, a k znaczy,
że Jasia
odwiedzili koledzy. Zestaw kończy się zerem.
Znaki te są zapisane w kolejności zachodzenia zdarzeń.
Specyfikacja wyjścia
Program powinien zwracać wartości banknotów, które Jaś pokazuje kolegom
pooddzielane spacją. Jeśli Jaś nie ma żadnego banknotu podczas
odwiedzin kolegów, program powinien w to miejsce wypisać słowo "bb"
(brak banknotów).
Przykład
Wejście
4
2000 2000 2000 w 2000 2000 2000 w w 6000 6000 w w k 0
k k k k 2 3 k 1 2 w 23 4 2 0
10000 k 1 w k 0
1 2 3 4 5 6 7 8 9 0
Wyjście
12000
bb bb bb bb bb
bb 10001