Dada uma lista de caminhos, produza o caminho correto.
Exemplo de caminho:
/\
----+/
|
-e|são caminhos horizontais e verticais./e\são curvas de 90 °.+é tratado como um-ou|dependendo da direção atual.
Os caminhos podem seguir qualquer direção e um caractere pode ser usado em vários caminhos.
A entrada será assim:
/--\
A------+--+--#
B------/ \--:
C------------#
D------------#
A,B,CEDsão caminho começa#é uma parede (o caminho é ruim):é o fim (o caminho está correto)
Então aqui a saída será B.
Você pode assumir:
:e#sempre será alcançado a partir da esquerda.- O personagem à direita do início de um caminho sempre será
-. - Os caminhos sempre serão bem formados.
#e:sempre estará na mesma coluna.- Sempre haverá apenas um
:e quatro caminhos.
Casos de teste
A------#
B------#
C------#
D------:
=>
D
A-\ /---:
B-+-/ /-#
C-+---+-#
D-+---/
\-----#
=>
B
/-\
A-+\\---#
B-/\-\/-#
C----++-#
D----+/
\--:
=>
A
A-\
B-+\
C-++\/----#
D-+++//---:
\++-//--#
\+--//-#
\---/
=>
A
/-\
A-+-/-\
B-+-+-\--#
C-+-/ |/-#
D-\---++-#
\---+/
\--:
=>
B
Como este é o código-golfe , a resposta mais curta ganha.
:sempre será alcançado a partir da esquerda ou também a partir da parte superior ou inferior? Em outras palavras, poderia haver caracteres diferentes #ou :na última coluna?
/ou\?