Jednoduchá úloha pro začínající programátory. Spíše procvičování programování než řešení problému.
Vaším úkolem je v souboru solver.py
naprogramovat funkci houses()
, která bude vracet řetězec, jenž po vytisknutí vytvoří “grafickou” reprezentaci domečků v ulici (pomocí znaků, viz níže). Vstupem funkce bude plán ulice, což je opět řetězec sestávající ze 3 možných znaků: o
(malé o) představující “prázdný” domeček, x
(malé x) představující “proškrtnutý” domeček a “_” (podtžítko) představující mezeru mezi domečky (volnou parcelu).
Domeček má základnu širokou 9 křížků, zdi z 9 křížků na sobě a střecha jde do výšky 4 křížků. Stojí-li domečky vedle sebe, sdílejí společnou zeď.
Lépe vám napoví příklady níže.
Příklady volání funkce houses()
a výpisu jejího výstupu vám osvětlí, jak by se funkce měla chovat.
Když stavíme domečky vedle sebe, mají vždy společnou zeď mezi sebou (jedná se o řadové domky a 2 zdi by byly zbytečné). A stejně pokud je mezi domky jen parcela (nebo je vedle sebe víc parcel), mají zeď nebo hraniční křížek parcely společný.
Funkce bude otestována na několika předem daných a několika náhodně vygenerovaných konfiguracích ulic. Podle poměru správně vygenerovaných výstupů a celkového počtu testů bude kód odměněn příslušnou částí maximálního počtu bodů.