Alguns personagens são mais santos que outros. Usando o mínimo de letras profanas possível, exiba a declaração acima.
Desafio
Escreva um programa completo para imprimir Holy Hole In A Donut, Batman!
em STDOUT ou na alternativa mais próxima. Se você pode compactar a entrada para reduzir sua pontuação, vá à loucura :)
Entrada
Nenhum
Saída
Holy Hole In A Donut, Batman!
Regras
- Este é um desafio de código e a pontuação mais baixa vence
- A saída desejada pode ser lida em um arquivo, mas isso deve ser contabilizado no total.
- Novas linhas à direita são boas na saída
- Aplicam-se brechas padrão e T&C
Pontuação
Sua pontuação é sua contagem de bytes, além de alguns modificadores:
- Usar caracteres sagrados
0469abdegopqrADOPQR@#
conta como 2 pontos cada - Usar caracteres sagrados extras
8B%$&
é de 1 ponto (sem penalidade) - Usar personagens profanos
12357cfhijklmnstuvwxyzCEFGHIJKLMNSTUVWXYZ!"^*()[]{}-=_+|\/?,.<>:;'~
acarreta uma penalidade mais pesada e conta como 10 pontos por personagem. - Espaço, tabulação e novas linhas são de 1 ponto (sem penalidade).
- Quaisquer outros caracteres não listados são 10 pontos.
* No teclado, as teclas '$' e '&' são mais santas. Onde variações de fonte fizerem com que um caractere se torne profano, adie para a lista acima
Os não modificados cordas Holy Hole In A Donut, Batman!
pontuação 172
Ruby: puts "Holy Hole In A Donut, Batman!"
pontuações 225
Verificador de pontuação
@DeadChex gentilmente montou um script de pontuação
Entre em contato se precisar esclarecer alguma coisa. Atualizarei a lista de caracteres, se necessário - incluímos apenas as teclas óbvias neste momento. A idéia é bastante simples - buracos nos personagens são bons.
fonte
0
deveria ser um personagem extra-sagrado ou não. (E é resposta)Respostas:
CJam ,
154153148143 143 pontosExperimente online!
Como funciona
fonte
Unários, 109,700,689,123,880,793,751,483,665,383,781,675,730,387,604,429,204,978,112,223,950,724,553,435,005,885,707,908,578,678,850,861,879,910,670,154,149,244,112,969,597,673,955,700,447,838,276,456,862,280,889,656,901,703,351,515,963,083,297,978,322,224,548,248,606,910,210,200,102,145,647,654,537,444,488,063,149,647,173,155,335,488,014,867,140,385,453,547,997,132,573,700,942,612,360 pontos
Calculado através de bc, que é a calculadora de maior precisão que eu conheço
Código:
4.5x10 259 Yottabytes
Bem, isso não está ganhando
fonte
4.87e268
petabytes de espaço em disco ...612360
) é divisível por,8
mas não por16
. Portanto, se a pontuação de alguém é divisível por16
, sua pontuação estaria mais próxima0
na2
métrica -adic do que esta. (Atualmente kirbyfan64sos tem uma pontuação Pyth de352
, que é divisível por32
, que parece que seria o líder sob esta norma.) Mathworld.wolfram.com/p-adicNumber.htmlBrainF ***, 3140 pontos
Eis a linguagem da impiedade !
fonte
Malbolge,
18741239Tenho certeza de que isso pode ser jogado mais. Tentará executar isso por mais tempo. Eu quero obter sub 1000 ...
Encontrei programas de menor duração (até 175, acho que sim), mas a pontuação foi maior ... Triste. Atualmente com 179 (180 é atual), com 4 pontos a menos, não tenho certeza se está editando um pouco.
fonte
sed,
169166 pontosEu contei cada
\t
um como um único ponto, pois ele pode ser substituído por um tabulador real.Experimente online!
Como funciona
Ambos os comandos usam o extra santo
&
como delimitador.O primeiro comando substitui o final do espaço do padrão (vazio) pela sequência
\to#y \to#e I% A Do%u8, Ba8ma%!
.O segundo substitui comando
\t
,#
,8
e%
com o profanoH
,l
,t
en
, respectivamente.Devido à penalidade por caracteres profanos, a transliteração adiciona 12 bytes, mas economiza 20 pontos.
fonte
PHP,
175168163160159 pontosFiz o que pude para reduzir a pontuação o máximo possível.
Com a ajuda de @Dennis , a pontuação foi reduzida em 5 pontos.
Sim, não exatamente curto ...
Substitua a
\n
e\t
por uma nova linha no estilo UNIX e uma guia, de forma correspondente.Para executá-lo, basta executá-lo com a opção -r ( não contada na pontuação )
Aqui está um mais curto, com apenas 256 pontos:
fonte
JavaScript, 1337 Pontos
Isso tira vantagem da aparência de que existem 26 letras no alfabeto e 26 caracteres podem ser representados por três dígitos dos números ternários (base 3) 0, 1 e 2, aqui representados
%$&
respectivamente.Divida essa cadeia enorme em cada '8' (eu a uso como um delimitador porque é extra-sagrado, os espaços também teriam funcionado), converta em um número inteiro base-3 por substituição (
0
torna- se , torna- se%
,1
torna- se ), converta-o em decimal ( = ) e, em seguida, coloque a sequência novamente. Adicione 65 (o valor da letra ) e converta cada número inteiro em um caractere, AZ. Por fim, converta para maiúsculas e adicione pontuação.$
2
&
%%&
2
char
A
Uma versão não minificada mais fácil de ler:
Claro que é pateta. Mas foi uma idéia divertida de qualquer maneira!
fonte
alert("Holy Hole In A Donut, Batman!")
tem uma pontuação de 238 ...split("8")
.HTML, 169 pontos
Esse é o único caractere que tinha uma entidade numérica decimal com apenas números ocultos.
(Na especificação HTML, as entidades devem ser seguidas por um ponto e vírgula, mas ainda funcionam nos principais navegadores sem um.)
fonte
Lote, 197 pontos
c
eh
são os únicos dois caracteres extras que não são santos - e como o lote não requer aspas redondas, perco a penalidade de 20 pontos.fonte
@
resultado em +2 à sua pontuação. Como alternativa, executar isso diretamente no prompt de comando funciona perfeitamente.Espaço em branco, 438 pontos
Se você não vê nada, é por causa do espaço em branco!
Ler sobre " 4. Espaço, tab e novas linhas são 1 ponto (sem penalidade). " Me leva à minha escolha de idioma:
[Início do código]
[Fim do código]
fonte
STL
s, cole o código na resposta à direita desse script /// (mas não no STDIN ou em um argumento). Dessa forma, você pode restabelecer a invisibilidade!Headsecks ,
333470Eu converti meu programa BF para Headsecks usando o máximo de caracteres Extra Holy possível. Muito mais santo que o BF.
Como as guias verticais aparentemente custam 10, mudei para
#
.Nota: Provavelmente ainda há uma pontuação melhor do que se eu não tivesse usado loops.
fonte
Insônia , 168 pontos
Conseguiu apenas 1 ponto melhor que a solução HTML.
fonte
Pyth, 182 pontos
Não é a minha linguagem mais forte. Estou aberto a sugestões ...
fonte
Montador Z80,
539523 pontosObserve que isso deve ser executado em um computador MSX , cuja rotina de BIOS CHPUT, localizada no endereço 00A2h, imprime o caractere passado no acumulador sem modificar nenhum registro.
(Como a pontuação pode ser calculada usando o binário montado, a propósito?) :-P
fonte
M
porQ
para economizar alguns pontos.Pyth, 352 pontos
Tentei ser inteligente e codificar a string como caracteres sagrados extras. Isso não funcionou muito bem ...
fonte
Jolf, não competidor
84 pontos
Experimente aqui!
Descompactando uma sequência compactada.
fonte
SMBF , 232 pontos
␀
representa um byte nulo literal\x00
, que é profano.fonte
Ook! - 15699 pontos
Vou ver seu Brainfuck, e eu te crio isso:
Nenhum orangotango foi prejudicial na redação deste programa.
fonte
Golunar , 1713
Claro, não é tão competitivo, mas tem uma pontuação melhor do que a minha resposta de namorado. O código é obtido tomando o comprimento do código em Unary como um número.
fonte
ferNANDo , 467 pontos
Experimente online!
fonte
Quarto, 193 pontos
Experimente online
Isso também funciona com a mesma pontuação:
fonte
05AB1E , 28 bytes (246 pontos / 182 pontos)
Experimente online!
ainda pior (base 5 com caracteres sagrados) - 256 bytes:
ou (menos divertido, super trivial):
por 182 pontos.
fonte
WYALHEIN ,
pontuação 3103, 2784 bytes2886 pontuação, 2558 bytesExperimente online!
Usado com um forcer bruto.
Depois de vários dias, eu já joguei isso.
fonte