Oto mapa, powiedzmy, lochu ...
##########
# #####
# #####
##########
##########
##########
##########
#### ##
#### ##
##########
Powiedzmy, że bohater jest w pokoju A (w lewym górnym rogu), a jego cel (książę w niebezpieczeństwie?) Znajduje się w pokoju B (w prawym dolnym rogu). Nasza mapa nie pozwala bohaterowi przejść do celu.
Musimy dodać przejście ...
##########
# #####
# #####
####.#####
####.#####
####.#####
####.#####
#### ##
#### ##
##########
Tam, o wiele lepiej!
Zasady
- Program lub funkcja, która akceptuje mapę lochów (złożoną z skrótów i spacji, z wierszami oddzielonymi znakami nowej linii).
- Wyświetli mapę z kropkami dodanymi w celu oznaczenia przejść we wszystkich przestrzeniach, które znajdują się na bezpośredniej ścieżce między znakami spacji.
- Nie zmieni długości ani liczby linii.
- Wszystkie przejścia są w linii prostej od spacji do spacji.
- Przejścia nie mogą zawracać za rogami
- Nie będą one znajdować się między spacjami a krawędzią mapy.
- Użyj dowolnego języka.
- Spróbuj wykonać konwersję w jak najmniejszej liczbie bajtów.
- Jeśli nie można narysować żadnych przejść, zwróć mapę bez zmian.
- Mapa powinna zawsze mieć skróty wokół wszystkich krawędzi (nie musisz obsługiwać spacji na krawędzi).
- Mapy wejściowe są zawsze prostokątne, każdy rząd powinien mieć tę samą szerokość.
Przypadki testowe
#### ####
# # => # #
# # # #
#### ####
########## ##########
# ##### # #####
# ##### # #####
########## ####.#####
########## => ####.#####
########## ####.#####
########## ####.#####
#### ## #### ##
#### ## #### ##
########## ##########
########## ##########
# ##### # #####
# ##### # #####
########## ##########
########## => ##########
########## ##########
########## ##########
###### ## ###### ##
###### ## ###### ##
########## ##########
########## ##########
# ##### # #####
# ##### # #####
########## ####.#####
########## => ####.#####
#### ### #### ###
########## ######.###
###### ## ###### ##
###### ## ###### ##
########## ##########
########## ##########
# ##### # #####
# ##### # #####
########## ##..######
########## => ##..######
########## ##..######
########## ##..######
## ####### ## .######
## ###### ## ######
########## ##########
########## ##########
# ##### # #####
# ##### # #####
########## #.########
########## => #.########
########## #.########
####### # #.##### #
####### # #.##### #
# ##### # # ..... #
########## ##########
########## ##########
# ##### # #####
# ##### # #####
########## #.########
##### ### => #.### ###
##### ### #.### ###
####### # #.##### #
####### # #.##### #
# ##### # # ..... #
########## ##########
########## ##########
## # ## #
########## ##......##
########## ##......##
########## => ##......##
########## ##......##
########## ##......##
########## ##......##
# ## # ##
########## ##########
########## ##########
#### #### #### ####
####### ## ####..# ##
###### ### ####.. ###
# ### ## # => # ... .. #
# ## ### # # .. ... #
### ###### ### ..####
## ####### ## #..####
#### #### #### ####
########## ##########
#
i.
?