Ihr Ziel ist es, ein Programm zu schreiben, das eine Zahl druckt. Je größer die Zahl, desto mehr Punkte erhalten Sie. Aber sei vorsichtig! Die Codelänge ist in der Bewertungsfunktion sowohl begrenzt als auch stark gewichtet. Ihre gedruckte Nummer wird durch den Würfel der Anzahl der Bytes geteilt, die Sie für Ihre Lösung verwendet haben .
Nehmen wir an, Sie haben gedruckt 10000000
und Ihr Code ist 100
byteslang. Ihre endgültige Punktzahl wird sein 10000000 / 100^3 = 10
.
Es gibt noch andere Regeln, um diese Herausforderung etwas zu erschweren.
- In Ihrem Code können keine Ziffern verwendet werden (0123456789).
- Sie können mathematisch / physikalisch / etc. Konstanten, aber nur , wenn sie weniger als 10 (zB können Sie verwenden Pi ~ = 3,14 , aber Sie können nicht die Verwendung Avogadro - Konstante = 6e23)
- Rekursion ist zulässig, aber die generierte Zahl muss endlich sein (daher wird Unendlich nicht als Lösung akzeptiert. Ihr Programm muss unter der Annahme unbegrenzter Zeit und unbegrenzten Speichers korrekt beendet werden und die angeforderte Ausgabe generieren).
- Sie können die Operationen
*
(Multiplizieren),/
(Dividieren),^
(Potenzieren) und andere Methoden nicht verwenden, um sie anzuzeigen (z. B.2 div 2
nicht zulässig). - Ihr Programm kann mehr als eine Zahl ausgeben, wenn Sie dies benötigen . Nur der Höchste zählt für die Wertung;
- Sie können jedoch Zeichenfolgen verketten: Dies bedeutet, dass jede Folge benachbarter Ziffern als einzelne Zahl betrachtet wird.
- Ihr Code wird so wie er ist ausgeführt. Dies bedeutet, dass der Endbenutzer keine Codezeile bearbeiten oder eine Zahl oder etwas anderes eingeben kann.
- Die maximale Codelänge beträgt 100 Byte.
Bestenliste
- Steven H. , Pyth ≈ f φ (1,0,0) +7 (256 26 ) / 1000000 [1]
- Einfach schöne Kunst , Rubin ≈ f φ 121 (ω) (126) [1]
- Peter Taylor , GolfScript ≈ f ε 0 + ω + 1 (17) / 1000 [1]
- res , GolfScript ≈ f ε 0 (f ε 0 (f ε 0 (f ε 0 (f ε 0 (f ε 0 (f ε 0 (f ε 0 (f ε 0 (126)))))))) [1]
- Simply Beautiful Art , Rubin ≈ f ω ω2 +1 (1983)
- eaglgenes101 , Julia ≈ f ω3 (127)
- col6y , Python 3, ≈ (127 → 126 → ... → 2 → 1) / 99 3 [1] [3]
- Toeofdoom , Haskell, ≈ a 20 (1) / 99 3 [1]
- Fraxtil , dc, ≈ 15 ↑ ¹⁶⁶⁶⁶⁶⁵ 15/100 3 [3]
- Magenta , Python, ≈ ack (126, 126) / 100 3 ≈ 10 ↑ 124 129
- Kendall Frey , ECMAScript 6, ≈ 10 3 ↑ 4 3 /100 3 [1]
- Ilmari Karonen , GolfScript, ≈ 10 ↑ 3 10 377 /18 3 [1]
- BlackCap , Haskell, ≈ 10 ↑↑ 65503/100 3
- rekursiv , Python, ≈ 2 ↑↑ 11/95 3 ≈ 10 ↑↑ 8.63297 [1] [3]
- nm , Haskell, ≈ 2 ↑↑ 7/100 3 ≈ 10 ↑↑ 4,63297 [1]
- David Yaw , C, ≈ 10 10 4 × 10 22 /83 3 ≈ 10 ↑↑ 4,11821 [2]
- PRIMO , Perl, 10 ≈ (12750684161!) 5 × 2 27 /100 3 ≈ 10 ↑↑ 4,11369
- Art , C, ≈ 10 10 2 × 10 6 /98 3 ≈ 10 ↑↑ 3,80587
- Robert Sørlie , x86, ≈ 10 2 2 19 +32 / 100 3 ≈ 10 ↑↑ 3.71585
- Tobia , APL, ≈ 10 10 353 /100 3 ≈ 10 ↑↑ 3,40616
- Darren Stone , C, 10 10 97.61735 / 98 3 ≈ 10 ↑↑ 3.29875
- ecksemmess , C, ≈ 10 2 320 /100 3 ≈ 10 ↑↑ 3,29749
- Adam Speight , vb.net, ≈ 10 5000 × (2 64 ) 4 /100 3 ≈ 10 ↑↑ 3,28039
- Joshua , bash, ≈ 10 10 15 /86 3 ≈ 10 ↑↑ 3,07282
Fußnoten
- Wenn jedes Elektron im Universum ein Qubit wäre und jede Überlagerung davon zum Speichern von Informationen genutzt werden könnte (was theoretisch möglich ist , solange Sie nicht wissen müssen , was gespeichert wird), benötigt dieses Programm mehr Speicher als es könnte existiert möglicherweise und kann daher nicht ausgeführt werden - jetzt oder zu irgendeinem denkbaren Zeitpunkt in der Zukunft. Wenn der Autor beabsichtigt, einen Wert größer als ≈3 ↑↑ 3.28 auf einmal zu drucken, gilt diese Bedingung.
- Dieses Programm benötigt mehr Speicher als derzeit vorhanden, aber nicht so viel, dass es theoretisch nicht auf einer mageren Anzahl von Qubits gespeichert werden kann, und daher könnte eines Tages ein Computer existieren, auf dem dieses Programm ausgeführt werden kann.
- Alle derzeit verfügbaren Interpreter geben einen Laufzeitfehler aus, oder das Programm wird ansonsten nicht wie vom Autor beabsichtigt ausgeführt.
- Das Ausführen dieses Programms führt zu irreparablen Schäden an Ihrem System.
Edit @primo : Ich habe einen Teil der Anzeigetafel mit einer hoffentlich einfacher zu vergleichenden Notation aktualisiert, wobei Dezimalstellen den logarithmischen Abstand zur nächsthöheren Potenz angeben . Zum Beispiel 10 ↑↑ 2,5 = 10 10 √10 . Ich habe auch einige Punkte geändert, wenn ich der Meinung bin, dass die Analyse des Benutzers fehlerhaft ist.
Erklärung dieser Notation:
Wenn ja 0 ≤ b < 1
, dann .a↑↑b = ab
Wenn ja b ≥ 1
, dann .a↑↑b = aa↑↑(b-1)
Wenn ja b < 0
, dann .a↑↑b = loga(a↑↑(b+1))
12e10
(12 * 10 ^ 10) als 12*10^10
?
500b
, ist dies ungültig? Das heißt, können wir alle nicht numerischen Dinge, die ein Programm ausgibt, ignorieren? Und wenn ja, würde so etwas als 50r7
zählen 507
?