|
Téglalapok
Bár gépelni mindenki ügyesen és gyorsan tud, nem szabad elfeledkezni a kézügyességünk fejlesztésének egyéb módszereiről sem. Ebben a feladatban mintegy gyakorlásként ollót kell ragadnunk és téglalapokat kell miszlikbe aprítanunk.
A feladat célja, hogy egy +,-, illetve | karakterekből kirajzolt téglalapot szétvágjunk a "függőleges" és "vízszintes" vonalak mentén, majd kiírjuk a képernyőre az összes így kapott kisebb sokszög területét csökkenő sorrendben. Fontos megjegyzés, hogy a vágásokat minden esetben addig kell folytatni amíg a kapott sokszögek egyike sem vágható már tovább és ezen felbonthatatlan sokszögek területét kell kiírni. Segítségként a feladat összes bemenete úgy készült, hogy az összes így kapott alakzat négy-, vagy hatszög.
Input
Az input három részből áll:
- Az első sor egy n pozitív egész mely a kiindulási téglalap szélességét adja meg.
- A második sor egy m pozitív egész mely a kiindulási téglalap magasságát adja meg.
- A következő n sor mindegyike m karaktert tartalmaz és a kiindulási téglalapot írja le. A függőleges oldalakat a - karakterekkel szimbolizáljuk (például -------), a vízszintes odalakat az egymás alatti | karakterekkel, míg az elágazások (pl. csúcsoknál) a + karakterrel vannak jelölve (ld. a mellékelt példát). A kitöltő karakter a szóköz.
Output
A kimenet egyetlen sor mely a tovább nem vágható sokszögek területeit tartalmazza csökkenő sorrendben, szóközzel elválasztva. Minden elkészült sokszög területe a "belsejében" lévő szóköz karakterek száma.
Megkötések
- n és m értéke legfeljebb 100.
- a feladatban szereplő "kis" sokszögek oldalhosszai legalább 3 egység hosszúak, így két + jel között mindig szerepel legalább egy -, vagy |.
- a kezdeti téglalapban nincsenek "kivágandó lyukak", azaz az összes sokszög kapcsolódik egymáshoz.
Példa
Magyarázat
+-+ x 2 (A=3) | | | | | | +-+
+-+ x 1 (A=5) | | | | | | | | | | +-+
+----+ x 1 (A=46) | | | | | | +-+ | | | | | | | | | | | +------+
letöltés szöveges állományként
|
|