Dado un pajar rectangular de tamaño de al menos 2x2 compuesto por todos los mismos caracteres ASCII imprimibles, genera la ubicación (contando desde la parte superior izquierda) de la aguja, que es un carácter diferente.
Por ejemplo, si se ingresa el siguiente pajar:
#####
###N#
#####
#####
El resultado debe ser 3,1
cuando está indexado a cero (lo que usaré en este desafío) o 4,2
cuando está indexado.
El pajar puede estar compuesto de cualquier carácter ASCII imprimible:
^^^
^^^
^N^
^^^
^^^
^^^
salida: 1,2
y la aguja será cualquier otro carácter ASCII imprimible:
jjjjjj
j@jjjj
jjjjjj
salida 1,1
También es posible tener una aguja en la esquina:
Z8
88
salida 0,0
88
8Z
salida 1,1
o para tener la aguja en el borde:
>>>>>>>>>>
>>>>>>>>>:
>>>>>>>>>>
salida 9,1
Reglas y aclaraciones
- La entrada y salida se pueden dar por cualquier método conveniente . Esto significa que puede tomar la entrada como una lista de caracteres, como una sola cadena, etc.
- Puede imprimir el resultado en STDOUT o devolverlo como resultado de una función. Indique en su envío en qué orden está la salida (es decir, horizontal y luego vertical, como se usa en el desafío, o viceversa).
- Un programa completo o una función son aceptables.
- Usted no consigue escoger qué caracteres a utilizar. Ese es el reto.
- Se garantiza que el pajar tendrá un tamaño de al menos 2x2, por lo que no es ambiguo cuál es la aguja y cuál es el heno.
- Solo hay una aguja en la entrada, y solo tiene un carácter de tamaño.
- Las lagunas estándar están prohibidas.
- Este es el código de golf, por lo que se aplican todas las reglas habituales de golf, y gana el código más corto (en bytes).
("########N###########", 5)
88\n8Z
(con dos caracteres cualquiera, por supuesto).