Este é o meu emoji de estimação, Billy:
-_-
Os emojis não gostam de estar na chuva, então Billy está triste ... Vamos desenhar um guarda-chuva para ele se sentir melhor!
/\
/ \
/ \
-_-
Isso é bom, ele está totalmente coberto por seu guarda-chuva! Aqui está um exemplo em que apenas parte dele é abordada:
/\
/ \
/ \
-_-
Nesse caso, as seções 2 e 3 de seu corpo são expostas à chuva.
Os guarda-chuvas têm várias formas e tamanhos, mas são sempre compostos por uma série de barras ascendentes, /
seguidas por uma série de barras invertidas descendentes \
. Por exemplo, todos esses são guarda-chuvas válidos:
/\
/ \
/ \
/\
/\
/ \
/ \
/ \
/ \
E estes não são:
/ \
\/
\
/ \
/ \
0\
/ \
//\\
/ \
Você precisa determinar quais partes do meu emoji estão expostas à chuva.
Esclarecimentos
Seu programa (ou função) terá uma string 2d como entrada. Isso pode estar no formato que for mais conveniente ou natural para o seu idioma. Uma matriz de seqüências de caracteres, uma matriz de matrizes de caracteres, uma sequência com novas linhas etc.
Você deve mostrar quais seções do emoji estão expostas à chuva. Isso pode ser indexado a zero ou a um, desde que você deixe isso claro. A saída pode estar em qualquer formato razoável. Se o emoji inteiro estiver protegido da chuva, não produza nada (ou uma matriz vazia).
Você pode assumir que todas as entradas terão um guarda-chuva válido, eo mesmo emoji:
-_-
. O emoji sempre estará na última linha da entrada, no entanto, pode haver várias linhas vazias entre o guarda-chuva e o emoji.Tudo o que não faz parte do guarda-chuva ou do emoji será um
caractere espacial ou uma nova linha.
A entrada será preenchida com espaços para que o comprimento de cada linha seja o mesmo.
As brechas padrão se aplicam e a resposta mais curta em bytes vence!
Teste de E / S:
Todos os casos de amostra usarão uma indexação.
/\
/ \
/ \
-_-
Outputs: []
----------------
/\
/ \
-_-
Outputs: [2, 3]
----------------
/\
-_-
Outputs: [1]
----------------
/\
/ \
/ \
/ \
/ \
/ \
-_-
Outputs: [1, 2, 3]
["_","-"]
.