Dado um palheiro retangular de tamanho pelo menos 2x2 composto pelos mesmos caracteres ASCII imprimíveis, produza a localização (contando a partir do canto superior esquerdo) da agulha, que é um caractere diferente.
Por exemplo, se o seguinte palheiro for inserido:
#####
###N#
#####
#####
A saída deve ser 3,1
quando indexada a zero (o que vou usar neste desafio) ou 4,2
quando indexada a uma.
O palheiro pode ser composto por qualquer caractere ASCII imprimível:
^^^
^^^
^N^
^^^
^^^
^^^
saída: 1,2
e a agulha terá qualquer outro caractere ASCII imprimível:
jjjjjj
j@jjjj
jjjjjj
saída 1,1
Também é possível ter uma agulha no canto:
Z8
88
saída 0,0
88
8Z
saída 1,1
ou para ter a agulha na borda:
>>>>>>>>>>
>>>>>>>>>:
>>>>>>>>>>
saída 9,1
Regras e esclarecimentos
- A entrada e a saída podem ser fornecidas por qualquer método conveniente . Isso significa que você pode receber informações como uma lista de caracteres, como uma única sequência, etc.
- Você pode imprimir o resultado em STDOUT ou retorná-lo como resultado da função. Indique em sua submissão em que ordem a saída está (por exemplo, horizontal e vertical, conforme usado no desafio ou vice-versa).
- Um programa completo ou uma função são aceitáveis.
- Você não escolhe quais caracteres usar. Esse é o desafio.
- É garantido que o palheiro tenha pelo menos 2x2 de tamanho, por isso é inequívoco qual é a agulha e qual é o feno.
- Existe apenas uma agulha na entrada e apenas um caractere.
- As brechas padrão são proibidas.
- Isso é código-golfe, portanto todas as regras usuais de golfe se aplicam e o código mais curto (em bytes) vence.
("########N###########", 5)
88\n8Z
(com dois caracteres, é claro).