Az I. 469. feladat (2018. december) |
I. 469. A következő egyszemélyes játékot játsszuk. Egy három sorból és négy oszlopból álló táblázatba az angol ábécé első 12 betűjét írjuk. Ha rábökünk egy sorra, akkor minden karakter jobbra mozdul, az utolsó karakter az első helyére kerül. Ha rábökünk egy oszlopra, akkor minden karakter lefelé mozdul, az alsó karakter pedig a felső helyre kerül.
Készítsünk programot, amely megad egy lehetséges lépéssorozatot, amellyel egy adott állapotból a jobbra látható rendezett állapotba jutunk.
A program standard bemenetére három sor kerül, soronként négy karakter szerepel egymástól egy-egy szóközzel elválasztva, amely a kiindulási állapot. A minden sorában két karakter szerepel: az első jelöli, hogy sor vagy oszlop mozdul, a második pedig megadja a sor vagy oszlop számát. Ha nem állítható elő az eredeti állapot, akkor a kimenet egyetlen sora -1 tartalmú legyen.
Példa bemenet (a / jel sortörést helyettesít) | Példa kimenet |
B F D H / E J G I / C K L A | o 4 / s 3 / o 2 / s 1 |
Értékelés: a tesztesetek felénél legfeljebb 5 lépésben elérhető a rendezett állapot.
Beküldendő egy i469.zip tömörített állományban a program forráskódja és a működéséhez szükséges egyéb fájlok, továbbá a hozzá kapcsolódó dokumentáció. Utóbbi a problémamegoldás lényeges elemeire világít rá, valamint tartalmazza, hogy a forrásállomány melyik fejlesztő környezetben fordítható.
(10 pont)
A beküldési határidő 2019. január 10-én LEJÁRT.
A tesztesetek fele legfeljebb 5 lépésben előállított helyzet megoldását várta el. Szerepelt a mintabemenet, a rendezett állapot, csak egy sort és egy oszlopot érintő lépéssorozat és egy általános 5 lépéses állapot is. A másik négy teszteset véletlenszerűen előállított 8, 10, 12 és 15 lépéses állapot volt. i469teszt.zip
Ahogy várható volt a rekurzív megoldásoknál idő vagy memóriaprobléma jelentkezett.
A legjobb eredményt ezúttal Horcsin Bálint Java nyelven írt programja adta, minden tesztesetet hibátlanul megoldott. i469teszt.zip I469HB.pdf
Statisztika:
5 dolgozat érkezett. 10 pontot kapott: Horcsin Bálint. 9 pontot kapott: Ürmössy Dorottya. 6 pontot kapott: 1 versenyző. 4 pontot kapott: 1 versenyző. 3 pontot kapott: 1 versenyző.
A KöMaL 2018. decemberi informatika feladatai