No mundo da arte ASCII, há água, paredes de hash e mecanismos de letras.
Você está em uma sala composta de paredes de hash ( #
placas):
#######
# #
# #
# #
# ### #
# #
#######
Você instala uma fonte de água S ( S
sinal) e um tanque de água E ( E
sinal) que pode receber água de qualquer direção, mas você só tem uma fonte S e um tanque E.
#######
# S #
# #
# #
# ### #
# E #
#######
Então você tem que selecionar sabiamente onde colocar a fonte. É aí que você desenvolve suas habilidades de código-golfe .
A tarefa
Você recebe uma entrada que consiste em uma sequência que representa uma sala com a fonte e o tanque:
#######
# S #
# #
# #
# ### #
# E #
#######
Você tem que descobrir se a água finalmente chega ao tanque. A água flui para baixo, se possível, para a esquerda e para a direita, se possível. A água não se acumula porque não sobe.
Portanto, para a entrada acima, o resultado é:
#######
# * #
# * #
#*****#
#*###*#
#**O**#
#######
Como a água chega feliz ao tanque, você deve gerar um valor verdadeiro.
Mas se a água não chegar ao tanque:
#######
#S #
# #
# E #
# ### #
# #
#######
#######
#* #
#* #
#* X #
#*### #
#*****#
#######
Então você deve gerar um valor falso.
Escreva um programa para decidir se a água finalmente chega ao tanque. Seu código deve ser o mais curto possível.
Suposições
Suponha que a entrada seja sempre válida (a sala inteira é uma região retangular fechada com S e E).
Suponha que haja apenas uma sala fornecida como entrada.
Casos de teste
Seu programa deve retornar um valor verdadeiro para os seguintes casos de teste:
#######
# S #
# #
# #
# ### #
# E #
#######
#######
# S #
# #
# E #
# #
# #
#######
#######
# #
# #
# SE #
# ### #
# #
#######
###############################################
# S #
# #
# #
# #
# ############### #
# #
# ################## ################## #
# #
# #
# ##### #
# E #
###############################################
#######
# S #
# #
# #
# ### #
# # #
### ###
## E ##
# #
#######
Mas um valor falso para os seguintes casos de teste:
#######
#S #
# #
# E #
# ### #
# #
#######
#######
# #
# SE #
# #
# #
# #
#######
#######
# #
# E #
# #
# S #
# #
#######
####################################
# #
# #
# #
#S # E#
####################################
O penúltimo quarto na categoria Verdadeiro e o último na categoria Falso foram roubados descaradamente emprestados de Koth: Jump and Run por Manu (que excluiu a postagem da caixa de areia).
O último quarto da categoria True é da resposta de Martin Buttner em Retina .
from
/ to
/ realmente (o que facilita para os participantes processar todos os testes casos de uma só vez).