Você deve escrever um programa BF (brainfuck de 100 bytes).
Um caractere removerá dele de todas as formas possíveis os 100 novos programas resultantes (99 bytes de comprimento). Por exemplo, para o programa ++.>.
os 5 subprogramas são +.>.
, +.>.
, ++>.
, ++..
e ++.>
.
Sua pontuação será o número de saídas exclusivas que os 100 programas geram. Maior pontuação é melhor.
Detalhes
- Seus programas serão encerrados após a saída do primeiro caractere.
- Programas inválidos ou não termináveis e programas que geram saídas vazias não são contabilizados para a pontuação.
- As células BF são de 8 bits. (255 + 1 = 0, 0-1 = 255)
- Seu programa não recebe nenhuma entrada. Se você usar
,
o código, ele definirá a célula atual para0
. - Não há células no lado esquerdo da posição inicial. Por exemplo,
<.
é inválido, mas.<
é válido, pois a execução é encerrada em.
. A fita não tem limites na outra direção. - Programas com colchetes não balanceados (
[
e]
) são inválidos. - Seu programa original pode ter menos de 100 bytes, pois é fácil estendê-lo para 100 bytes sem alterar a pontuação.
- Seu programa original não precisa ser um código BF válido.
Você pode usar este programa python3 (link ideone) para determinar a pontuação da sua resposta. (Para programas de longa execução, pode ser necessário modificar a maxstep
variável.)
Exemplo
(Para simplificar, este programa tem menos de 100 bytes.)
Solution: ++,+[-]+><.-,-.
Score: 3
Explanation:
Subprogram => Output
+,+[-]+><.-,-. => 1
+,+[-]+><.-,-. => 1
+++[-]+><.-,-. => 1
++,[-]+><.-,-. => 1
++,+-]+><.-,-. => None
++,+[]+><.-,-. => None
++,+[-+><.-,-. => None
++,+[-]><.-,-. => 0
++,+[-]+<.-,-. => None
++,+[-]+>.-,-. => 0
++,+[-]+><-,-. => 255
++,+[-]+><.,-. => 1
++,+[-]+><.--. => 1
++,+[-]+><.-,. => 1
++,+[-]+><.-,- => 1
Unique outputs are [0, 1, 255]
Score is 3 for ++,+[-]+><.-,-. (length = 15)
Em caso de empate, o vencedor é aquele com o código mais curto. (Seu programa pode ter menos de 100 bytes, conforme indicado na seção Detalhes.) Se os códigos tiverem o mesmo comprimento, o vencedor será o pôster anterior.
Quebra-cabeça bônus: sem a restrição em negrito, você pode encontrar um programa com pontuação 100?