Cvičenie č. 10 - Zápočtový test č. 1
Úloha: Bludisko
Nájdite najkratšiu cestu z bludiska:
Príklad
Vstup
+-+-+-+-+-+-+-+-+-+-+
| | |
+-+ + +-+-+ + +-+-+-+
| | | | |
+ +-+-+ +-+ + + +-+ +
| | | | | | | |
+ + + +-+ +-+-+-+ + +
| | | | | | |
+ +-+ + +-+-+ + +-+-+
| | | | | | |
+ + +-+-+ + +-+-+ + +
| | | | | |
+-+-+ +-+-+ +-+ +-+ +
| | | | |
+ +-+-+ +-+-+ +-+ + +
| | | | | |
+-+ + +-+-+ +-+ +-+-+
| | | |
+ +-+ + +-+-+ +-+-+ +
| | |
+-+-+-+-+-+-+-+-+-+-+
Výstup
+-+-+-+-+-+-+-+-+-+-+
####| | |
+-+#+ +-+-+ + +-+-+-+
|###| |##### | |
+#+-+-+#+-+#+ + +-+ +
|#| |###|###| | | |
+#+ +#+-+#+-+-+-+ + +
|# |#|###| | | |
+#+-+#+#+-+-+ + +-+-+
|#|###|###| | | |
+#+#+-+-+#+ +-+-+ + +
|###|#####| | | |
+-+-+#+-+-+ +-+ +-+ +
|#####| | | |
+#+-+-+ +-+-+ +-+ + +
|###| | | | |
+-+#+ +-+-+ +-+ +-+-+
|###|### |#######|
+#+-+#+#+-+-+#+-+-+#+
|#####|#######| ##
+-+-+-+-+-+-+-+-+-+-+
Poznámky:
- bludisko načítavajte zo súboru a výstup vypíšte do konzole
- môžete predpokladať, že na vstup dostanete vždy rozumné bludisko (tzn. nie je treba ošetrovať nesprávny vstup)
- bludisko na vstupe môže mať rôzne rozmery
- viete sa hýbať len v štyroch smeroch: hore, dole, doprava, doľava
- nájdená cesta musí byť najkratšia
- do bludiska vstupujete vždy z ľavého horného rohu a vystupujete z práveho dolného rohu
- vaše riešenie si otestujte aspoň na niekoľkých ďalších vstupoch, ktoré si vygenerujte tu: Maze Generator
- hint: použite vhodné prehľadávanie, môžete používať dátové štruktúry naimplementovanú priamo v C#, e.g.
Queue<T>. - chcem vidieť pekne štrukturovaný kód, tzn.:
- rozumné využitie tried
- žiadna metóda by nemala mať viac než 10 riadkov
Vaše riešenie aj s testovacím kódom mi pošlite mailom (posielajte len čisté zdrojáky).
Ďalšie cvičenie odpadáva, opravný termín bude až o 2 týždne.