Escreva um quine ... do qual todos os outros caracteres possam ser removidos, ele ainda será um quine válido. Você pode especificar se deseja começar a remover caracteres no primeiro ou no segundo caracteres.
Critérios de pontuação (adicione bônus / porcentagens penatly para a porcentagem total):
- As respostas devem ter pelo menos 4 caracteres
- O programa deve conter pelo menos um caractere alfabético em sua origem, por exemplo,
12345!@#$%^&*()
é desqualificado - + 750% se a linguagem usada não estiver completa em Turing (estou olhando para você, HTML!)
- -15% se a solução não ler sua fonte de qualquer lugar, de qualquer forma
- -20% se você também pode manter apenas cada quinto personagem e ainda formar um quine
A pontuação é medida pelo número de caracteres no primeiro programa.
Exemplo (programas não reais):
Se 123456789abcdef
e 13579bdf
são ambos quines, a pontuação é 15. Além disso, se 159d
também for uma quine, a pontuação final será 12.
Isso é código-golfe, então a pontuação mais baixa vence.
Respostas:
PHP, 4 caracteres - 15% - 20% =
2,722,6 pontosSim, o PHP é uma linguagem completa de Turing. Ninguém disse que eu tenho que usar qualquer um dos seus recursos de programação reais. ;-)
Editar: a pontuação foi alterada com base no esclarecimento de que os bônus são aditivos, não multiplicativos.
fonte
TI BASIC 4 - 35% = 2,6
Posso entendê-los errado, mas acho que também sou elegível para os bônus de -15% e -20%, o que significa que tenho a menor pontuação possível.
Eu posso escrever o programa:
que produzirá
123i
onde i é, obviamente, a unidade imaginária. Quando você remove o primeiro e o terceiro caracteres, resta apenas o2i
resultado2i
fonte
Python - 95
Grande desafio. Eu pensei que isso era muito inteligente, e realmente uma solução legítima!
fonte
Golfscript, 5 pontos
é uma função que, quando executada, executará a função (não existente)
hai
. No entanto, não é executado, mas é impresso quando o programa termina - incluindo os colchetes externos. A remoção do outro caractere gera:Lame, eu sei :-)
fonte
{}
é uma opção.{ab0}
qualifique se0
pode ser o que é mantido){ab0}
qualifica-se de qualquer maneira.{hi}
também funciona, será mais curto (4 caracteres) e também se qualificará para todos os bônus. (Parece que o script{i
avalia a{i
por alguma razão ...){i
produz um fechamento adicional encaracolado para mimHQ9 + - 4 * 7,5 * 0,8 = 24 pontos
Ainda assim, com cada segundo caractere:
... e cada quinto:
Desculpe, eu não pude resistir. :)
fonte
HTML / remarcação, 4 * 7,5 = 30
Admito que isso é ridículo, mas na verdade não vai contra nenhuma regra da questão. Exceto que HTML / Markdown pode não ser considerado uma linguagem de programação real.
fonte
5555
não funciona porque não tem caractere alfabético! / bin / sh
Gostei tanto da solução qwr , que descaradamente fiz uma porta para o shell POSIX. Não o salve em um nome de arquivo que contenha espaços.
Comece a remover no caractere número 1 e conte novas linhas como caracteres. O segundo quine é claro:
Por favor, vote acima da resposta do qwr em vez desta!
fonte
Bash, 23
Newline é um personagem!
Alguns comentários confusos funcionam, de modo que, quando todos os outros caracteres iniciados pelo primeiro são removidos, o comentário se torna código e o código se torna um comentário:
Depois que todos os outros caracteres ( incluindo a nova linha ) forem removidos:
fonte
Brainf ** k, 37 - 15% = 31,45
Abusando do intérprete portátil de Brainfuck
Comece a remover do segundo caractere.
fonte
B-C<D+E]F-GÿH<I<J<K<L<M<N<O[P.Q>R]
como saída, portanto, faltam alguns caracteres.HQ9 + T, - 4 * 0,8 = 3,2 pontos
É um quine válido (ish) e um quine a cada segundo e quinto char. Eu não pude resistir. . . .
fonte