Dada una cadena 2D como entrada, ya sea como una cadena con nuevas líneas o una lista de líneas, genera las coordenadas (x, y)
de todos los hashes (#
) en la lista. La entrada solo contendrá hashes y espacios. (y nuevas líneas, si elige tomar la entrada como una cadena 2D)
Si no hay hashes, puede generar cualquier cosa.
La salida no debe ser ambigua en cuanto a qué números están emparejados con cuáles.
Ejemplo:
##
Debería dar salida:
(0,0), (1,0)
Eso supone una indexación basada en 0, comenzando desde la parte superior izquierda. Puede comenzar desde cualquier esquina, usar indexación basada en 0 o 1, y / o salida y
primero. (por ejemplo, en el formulario y,x
).
Más casos de prueba (de nuevo, todos usando (x, y)
indexación superior izquierda basada en 0 ):
#
#####
#
(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)
Tenga en cuenta que todos estos casos de prueba se enumeran por filas, no siguiendo la ruta.
Puede suponer que los hashes formarán un rastro continuo, es decir # #
, nunca serán la entrada. (probablemente no importará, pero en caso de que alguien quiera expresar esto)
También puede generar las coordenadas en el orden que desee, es decir, columnas verticales, filas horizontales o simplemente una lista sin clasificar.