En el mundo del arte ASCII, hay agua, paredes hash y mecanismos de letras.
Estás en una habitación compuesta por paredes de hachís ( #
signos):
#######
# #
# #
# #
# ### #
# #
#######
Instala una fuente de agua S ( S
letrero) y un tanque de agua E ( E
letrero) que puede recibir agua desde cualquier dirección, pero solo tiene una fuente S y un tanque E.
#######
# S #
# #
# #
# ### #
# E #
#######
Por lo tanto, debe seleccionar sabiamente dónde colocar la fuente. Ahí es donde sacas tus habilidades de código de golf .
La tarea
Obtiene una entrada que consiste en una cadena que representa una habitación con la fuente y el tanque:
#######
# S #
# #
# #
# ### #
# E #
#######
Tienes que averiguar si el agua finalmente llega al tanque. El agua fluye hacia abajo, si es posible, de lo contrario hacia la izquierda y hacia la derecha, si es posible. El agua no se acumula porque no sube.
Entonces, para la entrada anterior, el resultado es:
#######
# * #
# * #
#*****#
#*###*#
#**O**#
#######
El agua llega felizmente al tanque, por lo que debe generar un valor verdadero.
Pero si el agua no llega al tanque:
#######
#S #
# #
# E #
# ### #
# #
#######
#######
#* #
#* #
#* X #
#*### #
#*****#
#######
Entonces debe generar un valor falso.
Escriba un programa para decidir si el agua finalmente llega al tanque. Su código debe ser lo más corto posible.
Supuestos
Suponga que la entrada siempre es válida (toda la sala es una región rectangular cerrada con S y E).
Suponga que solo se proporciona una habitación como entrada.
Casos de prueba
Su programa debe devolver un valor verdadero para los siguientes casos de prueba:
#######
# S #
# #
# #
# ### #
# E #
#######
#######
# S #
# #
# E #
# #
# #
#######
#######
# #
# #
# SE #
# ### #
# #
#######
###############################################
# S #
# #
# #
# #
# ############### #
# #
# ################## ################## #
# #
# #
# ##### #
# E #
###############################################
#######
# S #
# #
# #
# ### #
# # #
### ###
## E ##
# #
#######
Pero un valor falso para los siguientes casos de prueba:
#######
#S #
# #
# E #
# ### #
# #
#######
#######
# #
# SE #
# #
# #
# #
#######
#######
# #
# E #
# #
# S #
# #
#######
####################################
# #
# #
# #
#S # E#
####################################
La penúltima habitación en la categoría Verdadero y la última habitación en la categoría Falso fueron robadas descaradamente de Koth: Jump and Run por Manu (quien eliminó la publicación de sandbox).
La última habitación en la categoría Verdadero es de la respuesta de Martin Buttner en Retina .
from
/ to
/ realmente (lo que facilita a los participantes procesar todas las pruebas casos a la vez).