Desafio
Escreva um programa / função não vazio pque, dada uma sequência de entrada não vazia s, produza a posição da primeira ocorrência de cada caractere sno código fonte de p.
Por exemplo, se o seu programa for
main() { cout << magic << cin }
^0 ^5 ^10 ^15 ^20 ^25
e recebe uma entrada abcd{, a saída deve ser
[1, x, 9, x, 7] (0-based) [2, x, 10, x, 8] (1-based)
Aqui, xrepresenta qualquer saída que não é uma saída válida para uma posição de caractere (por exemplo, um número negativo, 0se você usa indexação baseada em 1, NaN, Inf, a string potato, um número maior do que o comprimento do seu programa, etc).
Restrições
A leitura do código fonte não é permitida (como em um quine apropriado). O uso de comentários é permitido, mas conta para a sua pontuação.
A entrada e a saída podem ser feitas em um formato razoável, mas devem ser inequívocas (apenas delimitadores adicionais, sem randfluxo e alegando que a resposta está em algum lugar), consistente (por exemplo, o xacima deve sempre ser o mesmo valor) e humano. legível ; por exemplo, uma sequência ou uma matriz de caracteres. Você pode assumir que a entrada é uma sequência (ou matriz) de caracteres ASCII imprimíveis; não há necessidade de lidar com todo o conjunto Unicode.
Página de código personalizada ou ascii não imprimível no seu código?
Se o seu idioma usa uma página de código personalizada (Jelly, APL, etc), você deve levar isso em conta (para que um programa €æÆexiba [1, x, 2]uma entrada €%æ). Usar apenas caracteres não ASCII para gerar -1sempre (uma vez que a entrada é somente ASCII) não é uma solução válida. Você pode assumir que seu programa aceita nativamente sua página de códigos personalizada, ou seja, se seu programa possui um método de converter um caractere Aem um número inteiro 65(codificação ASCII), você pode assumir que agora ele converte o 65º caractere em sua página de código em 65.
Inspirado no seguinte desafio: Consciência posicional
01030708070,?