Lenguage é um dialeto que é famoso por quebrar desafios de restrição de origem. Isso ocorre porque o Lenguage se importa apenas com o tamanho da fonte e não com o conteúdo.
Primeiro, o comprimento do programa é calculado. Em seguida, o referido comprimento é convertido em binário e preenchido à esquerda por zeros para um múltiplo de 3. A cadeia binária resultante é dividida em pedaços de 3 bits, cada um dos quais é traduzido em um comando brainfuck como tal:
000 -> +
001 -> -
010 -> >
011 -> <
100 -> .
101 -> ,
110 -> [
111 -> ]
Finalmente, o programa é executado como brainfuck 1 .
A partir daqui, o desafio é bem simples, escreva um programa de idiomas que não aceite entrada e produza uma saída que consiste em um byte inteiro repetido vezes, em que é estritamente maior que a duração do seu programa.
As respostas serão pontuadas em bytes, com menos bytes sendo melhores.
Aqui está um programa hacky para calcular a linguagem do brainfuck
1: Para esse desafio, usaremos células de embrulho e uma fita não embrulhada.
fonte
+[.]
Eu ganho? : P+
é a mais barata e]
a mais cara) e, é claro, importa onde estão no programa. Embora seja uma boa estimativa, não é exatamente equivalente.Respostas:
8437495638205698686671 bytes
Isso se traduz no programa brainfuck:
Isso é calculado pela função
com uma entrada de 255.
Explicação:
fonte
9093903938998324939360576240306155985031832511491088836321985855167849863863065731015823 bytes
Que imprime exatamente
O crédito vai para @hvd nesta resposta do Brainfuck , por isso não deixe de votar nele!
Explicação:
Eu ia escrever uma explicação própria, mas percebi que a explicação do @hvd já está no ponto, então cito aqui:
fonte
19326644346528796447 bytes
Código Brainfuck:
Impressões
bytes nulos.
Funciona assim:
Recursão bastante direta.
fonte