Lenguage ist ein Brainfuck-Dialekt, der bekannt dafür ist, dass er die Herausforderungen der Quellenbeschränkung meistert . Das liegt daran, dass sich Lenguage nur um die Länge der Quelle und nicht um den Inhalt kümmert.
Zunächst wird die Länge des Programms berechnet. Diese Länge wird dann in binär umgewandelt und mit Nullen auf ein Vielfaches von 3 aufgefüllt. Die resultierende binäre Zeichenfolge wird in 3-Bit-Blöcke aufgeteilt, von denen jeder in einen Brainfuck-Befehl übersetzt wird:
000 -> +
001 -> -
010 -> >
011 -> <
100 -> .
101 -> ,
110 -> [
111 -> ]
Schließlich wird das Programm als Brainfuck 1 ausgeführt .
Von hier aus ist die Herausforderung ziemlich einfach: Schreiben Sie ein Sprachprogramm, das keine Eingabe benötigt und eine Ausgabe erzeugt, die aus einem Byte besteht, das mal ganzzahlig wiederholt wird, wobei streng größer ist als die Länge Ihres Programms.
Antworten werden in Bytes bewertet, wobei weniger Bytes besser sind.
Hier ist ein Hacky-Programm zur Berechnung der Sprache aus Brainfuck
1: Für diese Herausforderung werden wir umhüllende Zellen und ein nicht umhüllendes Band verwenden.
quelle
+[.]
Gewinne ich : P+
]
Antworten:
8437495638205698686671 Bytes
Dies übersetzt in das Brainfuck-Programm:
Dies wird von der Funktion berechnet
mit einer Eingabe von 255.
Erläuterung:
quelle
9093903938998324939360576240306155985031832511491088836321985855167849863863065731015823 Bytes
Welches druckt genau
Gutschrift geht an @hvd in dieser Brainfuck-Antwort , also stelle sicher, dass du ihn positiv bewertest!
Erläuterung:
Ich wollte eine eigene Erklärung schreiben, habe jedoch festgestellt, dass die Erklärung von @hvd bereits zutreffend ist, und zitiere sie stattdessen hier:
quelle
19326644346528796447 Bytes
Brainfuck-Code:
Druckt
null Bytes.
Es funktioniert so:
Ganz unkomplizierte Rekursion.
quelle