Az I. 415. feladat (2016. december) |
I. 415. Egy \(\displaystyle N\times M\) (\(\displaystyle 1\le N,M\le 40\)) méretű, téglalap alakú területre egy karakter vastag szegélyű téglalapokat raktak egymásra úgy, hogy oldalaik párhuzamosak a terület oldalaival. A téglalapok kitöltetlenek és átfedhetik egymást. A téglalapok száma \(\displaystyle DB\) (\(\displaystyle 0\le DB\le 26\)) és mindegyik keretvonala az angol ábécé egy-egy nagybetűjéből áll. A terület a téglalapok egymás utáni elhelyezése következtében kialakuló betűrendszert mutatja. A terület egyetlen betűvel sem érintett mezőin a ,,.'' karakter szerepel.
Készítsünk programot i415 néven, amely megadja, hogy milyen sorrendben rakták egymásra a téglalapokat. Ha több megoldás is lehetséges, akkor elegendő egyet megadni.
A program olvassa be a standard input első sorából \(\displaystyle N\)-et, \(\displaystyle M\)-et, majd a következő \(\displaystyle M\) sorból soronként \(\displaystyle N\) darab, szóközzel elválasztott karaktert: a területen kialakuló betűrendszert. A program írja a standard outputra a téglalapok lerakásának egy lehetséges sorrendjét.
Beküldendő egy tömörített i415.zip állományban a program forráskódja és rövid dokumentációja, amely tartalmazza a megoldás vázlatos leírását, és megadja, hogy a forrásállomány melyik fejlesztői környezetben fordítható.
(10 pont)
A beküldési határidő 2017. január 10-én LEJÁRT.
Megoldásokról:
A feladatra két helyes megoldás érkezett.
A területet ábrázoló karakterek beolvasása és tárolása után, ki kell választani azt a téglalap keretet, amely teljesen látszik (ha több van, akkor valamelyiket). Ennek karakterét feljegyezzük.
A kiválasztott teljes keret karaktereinek helyére speciális karaktert teszünk és a továbbiakban ezt is úgy tekintjük, mintha az összes téglalaphoz tartozna. Ezzel eltávolítjuk az aktuálisan teljes keretet egészen addig, amíg az összeset le nem vettük. A végén kiíratjuk a téglalapok betűit a levételhez képest fordított sorrendben.
Mintamegoldás:
Kis Lázár Bence 11. osztályos tanuló Dunaszerdahely, Magyar Tanítási Nyelvű Magángimnázium megoldása: i415.cpp
Statisztika:
4 dolgozat érkezett. 10 pontot kapott: Kis Lázár Bence, Rittgasszer Ákos. 3 pontot kapott: 2 versenyző.
A KöMaL 2016. decemberi informatika feladatai