|
|||
Olvasd-és-mondd sorozatokTekintsük az alábbi, egész számokból álló sorozatot:
Ezt a sorozatot olvasd-és-mondd sorozatnak nevezzük, 1-es kezdeti értékkel. A kezdeti érték a sorozat első eleme. A sorozat minden további elemét a megelőző elemből generáljuk az alábbi módon: csoportosítsuk az azonos számjegyek szomszédos előfordulásait, majd minden csoport esetén jelöljük két számjeggyel, hogy a csoport hány darab és milyen számjegyet tartalmaz. A kezdeti értéket (az 1-et) például úgy olvassuk ki, hogy „egy 1-es”, amelyből megkapjuk a második elemet, az 11-et. Ezt úgy olvassuk ki, hogy „két 1-es”, amelyből megkapjuk a harmadik elemet, a 21-et. A negyedik elemet (1211) úgy olvassuk ki, hogy „egy 1-es, majd egy 2-es, majd két 1-es”, amelyből megkapjuk az ötödik elemet, az 111221-et. Természetesen különböző kezdeti értékekből kiindulva különböző sorozatokat kapunk. Írj programot, amely bemenetként megkap egy nemnegatív j és egy pozitív k egész számot, és a kimenetre írja a j kezdeti értékkel rendelkező olvasd-és-mondd sorozat első k elemét. A bemenet specifikációjaAz első sor egy n pozitív egész számból áll, amely az előállítandó sorozatok számát adja meg. A következő n sor mindegyike két nemnegatív egész számot tartalmaz, j-t és k-t, amelyek egy-egy sorozatot definiálnak az előző bekezdésben leírtak szerint. Feltételezheted, hogy j számjegyeinek a száma nem haladja meg a 100-at, és nem tartalmazza ugyanannak a számjegynek 9-nél több szomszédos előfordulását. A kimenet specifikációjaA bemeneten definiált minden olvasd-és-mondd sorozatra a programnak egyetlen sort kell előállítania a kimeneten, amely a megadott sorozat elemeit tartalmazza egy-egy szóközzel elválasztva. Példa bemenet
A példa bemenethez tartozó kimenet
|
|||
Debreceni Egyetem, Informatikai Kar, v. 2024.09.30. |