Todos sabemos o que é uma solução . Um quine invertido é um programa não vazio que imprime o inverso de seu código-fonte sem ler seu código-fonte e consiste apenas em caracteres ASCII imprimíveis (espaço através ~
).
Aqui, “inverso do código fonte” significa o seguinte: a saída do seu programa deve conter cada caractere ASCII imprimível (m - c) vezes, em que c é o número de vezes que o caractere ocorre no código e m é o máximo número de vezes que um caractere é repetido no seu código.
(Em outras palavras: seu código + sua saída = permutação de m vezes todos os ASCII imprimíveis.)
Por exemplo, se o seu programa for 12345
, então m = 1 , e você deve gerar qualquer permutação dessa string:
!"#$%&'()*+,-./06789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
Se o seu programa for AAB
, então m = 2 , e você deverá gerar qualquer permutação de:
!!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@BCCDDEEFFGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~
Observe como há dois se faltando A
e um faltando B
.
Embora um programa que contenha todos os caracteres ASCII imprimíveis e não produza nada seja um quine inverso válido (satisfazendo m = 1 ), essa resposta não seria muito competitiva, dada a sua extensão.
Você deve escrever um programa que seja uma solução invertida, conforme descrito no parágrafo acima. Como esse é o código-golfe , o programa mais curto em bytes será vencedor. Boa sorte!
duplicated for every repeated character in the source code
que faz toda a diferença no desafio
11234512345
,?
duplicated for every repeated character in the source code
significa ou se a submissão é válida para esse critério, porque o OP não abordou um algumas das perguntas aqui.