Dada uma string 2D como entrada, como uma string com novas linhas ou uma lista de linhas, produza as coordenadas (x, y)
de todos os hashes ( #
) na lista. A entrada conterá apenas hashes e espaços. (e novas linhas, se você optar por receber a entrada como uma sequência 2D)
Se não houver hashes, você pode produzir qualquer coisa.
A saída deve ser inequívoca quanto a quais números estão emparelhados com os quais.
Exemplo:
##
Saída deve:
(0,0), (1,0)
Isso pressupõe a indexação baseada em 0, iniciando no canto superior esquerdo. Você pode começar de qualquer canto, usar indexação com base em 0 ou 1 e / ou saíday
primeiro. (por exemplo, no formulário y,x
).
Mais casos de teste (novamente, todos usando o canto superior esquerdo com base em 0 (x, y)
indexação ):
#
#####
#
(4, 0), (0, 1), (1, 1), (2, 1), (3, 1), (4, 1), (0, 2)
# ###
### #
(0, 0), (2, 0), (3, 0), (4, 0), (0, 1), (1, 1), (2, 1), (4, 1)
Observe que todos esses casos de teste são listados por linhas, não seguindo o caminho.
Você pode assumir que os hashes formarão uma trilha contínua, ou seja, # #
, nunca será a entrada. (provavelmente não importará, mas caso alguém queira regexar isso)
Você também pode produzir as coordenadas na ordem que desejar, como colunas verticais, linhas horizontais ou apenas uma lista não classificada.