Questa è la mia emoji da compagnia, Billy:
-_-
Agli emoji non piace stare sotto la pioggia, quindi Billy è triste ... Disegniamo un ombrello per farlo stare meglio!
/\
/ \
/ \
-_-
Questo va bene, è interamente coperto dal suo ombrello! Ecco un esempio in cui è coperta solo una parte di lui:
/\
/ \
/ \
-_-
In questo caso, le sezioni 2 e 3 del suo corpo sono esposte alla pioggia.
Gli ombrelli sono disponibili in molte forme e dimensioni, ma sono sempre costituiti da una serie di barre ascendenti /seguite da una serie di barre rovesciate discendenti \. Ad esempio, questi sono tutti ombrelli validi:
/\
/ \
/ \
/\
/\
/ \
/ \
/ \
/ \
E questi non sono:
/ \
\/
\
/ \
/ \
0\
/ \
//\\
/ \
Devi determinare quali parti della mia emoji sono esposte alla pioggia.
chiarimenti
Il tuo programma (o funzione) prenderà una stringa 2d come input. Questo può essere in qualsiasi formato più conveniente o naturale per la tua lingua. Una matrice di stringhe, una matrice di matrici di caratteri, una stringa con dentro nuove righe ecc.
Devi emettere quali sezioni delle emoji sono esposte alla pioggia. Questo può essere indicizzato zero o indicizzato uno, purché sia chiaro. L'output può essere in qualsiasi formato ragionevole. Se l'intera emoji è protetta dalla pioggia, non emettere nulla (o un array vuoto).
Si può supporre che tutti gli ingressi avranno un ombrello valida, e lo stesso emoji:
-_-. Le emoji saranno sempre sull'ultima riga dell'input, tuttavia potrebbero esserci diverse righe vuote tra l'ombrello e l'emoji.Tutto ciò che non fa parte dell'ombrello o dell'emoji sarà un
personaggio spaziale o newline.L'input sarà riempito con spazi in modo che la lunghezza di ogni riga sia la stessa.
Si applicano scappatoie standard e vince la risposta più breve in byte!
Test IO:
Tutti i casi di esempio utilizzeranno l'indicizzazione singola.
/\
/ \
/ \
-_-
Outputs: []
----------------
/\
/ \
-_-
Outputs: [2, 3]
----------------
/\
-_-
Outputs: [1]
----------------
/\
/ \
/ \
/ \
/ \
/ \
-_-
Outputs: [1, 2, 3]
["_","-"].