Az I. 183. feladat (2008. március) |
I. 183. Bergengócia kórházaiban a kiadási összegeket igyekeznek csökkenteni. A kilyukadt lepedőket nem dobják el, hanem megfoltozzák. Rendelkeznek egy korszerű lyukfelismerő géppel, amely minden lepedőnél adott felbontással meghatározza, hogy cellánként a vászon ép-e, vagy lyukas. (Lyuk a vászon szélén nem lehet, mert a lepedő széle a beszegés miatt nagyon erős.)
A felismerő gép egy cellára V értéket ad, ha a vászon sértetlen és L értéket, ha lyukas. A lyukas területre az anyaghiányt éppen eltakaró téglalap alakú foltot szeretnének varrni, amelynek oldalai a lepedő oldalaival párhuzamosak. A lyukas terület összefüggő, ha az L tartalmú cellák oldalukkal, de különálló, ha csak sarkukkal érintkeznek, vagy nem érintkeznek. A foltok átfedhetik egymást.
Készítsünk programot, amely a lyukfelismerő gép által meghatározott adatállomány alapján megadja, és a standard kimenetre írja a lepedőre varrandó foltok sorszámát, bal felső és jobb alsó sarkának koordinátáit (sor száma, oszlop száma sorrendben) a lepedő bal felső sarkához képest.
A program parancssori argumentuma legyen a lepedőt leíró adatállomány neve. A fájl első sorában egy egész érték szerepel: N (3N200) a sorok száma; a fájl második sorában M (3M200) az oszlopok száma. Az ezt követő N sor mindegyike M számú karaktert tartalmaz a megfelelő cellák állapotának (V vagy L) leírására.
Beküldendő a program forráskódja (i183.pas, i183.cpp, ...), valamint a program rövid dokumentációja (i183.txt, i183.pdf, ...), amely tartalmazza a megoldás rövid leírását, és megadja, hogy a forrásállomány melyik fejlesztő környezetben fordítható.
(10 pont)
A beküldési határidő 2008. április 15-én LEJÁRT.
Statisztika:
7 dolgozat érkezett. 10 pontot kapott: Adrián Patrik, Földes Imre, Szoldatics András, Véges Márton. 5 pontot kapott: 1 versenyző. 4 pontot kapott: 2 versenyző.
A KöMaL 2008. márciusi informatika feladatai