Einführung
Beginnen wir mit der Anordnung aller Brüche von 0 bis 1 in der Reihenfolge des niedrigsten Nenners und des niedrigsten Zählers:
1/2, 1/3, 2/3, 1/4, 3/4, 1/5, 2/5, 3/5, 4/5, 1/6, 5/6, 1/7 ...
Beachten Sie, dass Duplikate nicht gezählt werden. Daher habe ich 2/4, 2/6, 3/6 oder 4/6 nicht aufgelistet, da sie bereits in ihrer vereinfachten Form (1/2, 1/3 und 2) angezeigt wurden /3).
Ihre Aufgabe ist jetzt einfach: Geben Sie bei einer positiven Ganzzahl n
als Befehlszeilenargument den n
dritten Bruch in der Liste als Standardausgabe aus . Eine Eingabe von 5
sollte also eine Ausgabe von 3/4
( nicht 0,75) ergeben.
Bowlers
Ihr Ziel ist es, dieses Problem so lange wie möglich zu lösen. Ihre Punktzahl ist die Anzahl der Zeichen.
Golfer
Ihr Ziel ist es, vorhandene Antworten aufzugreifen und diese zu nutzen. Entfernen Sie beim Golfspielen dieser Antworten ein oder mehrere Zeichen aus dem Code und ordnen Sie optional die verbleibenden Zeichen so an, dass der resultierende Code immer noch eine gültige Lösung in derselben Sprache ist. Ihre Punktzahl ist das Produkt aller Ermäßigungen. (Wenn Sie also 10 Zeichen aus einer Antwort und 15 Zeichen aus einer anderen entfernen, erhalten Sie 150 Punkte.)
Regeln
- Ein gültiges Programm muss mindestens drei eindeutige Zeichen enthalten.
- Es dürfen nur ASCII-Zeichen verwendet werden.
- Wenn die Größe Ihres Programms verringert wird, wird Ihre Punktzahl entsprechend verringert.
- Beim Golfen eines Programms ...
- Bearbeiten Sie den Code im Text der Antwort
- Ändern Sie die Anzahl der aufgelisteten Zeichen
- Hinterlasse folgenden Kommentar:
**Removed X characters (from Y to Z)**
(fett gedruckt)
- Sie können ein gültiges Programm nicht in ein ungültiges Golf spielen.
- Das Golfprogramm muss in einer Version der aufgelisteten Sprache funktionieren. Wenn die ursprüngliche Antwort also als Python markiert ist und der Code nur in Python 2 funktioniert, können Sie dies mit einem Programm tun, das nur in Python 3 funktioniert.
- Aus diesem Grund wird empfohlen (aber nicht erforderlich), dass Sie Ihre Antwort unter Angabe der verwendeten Version und / oder des verwendeten Compilers genau benennen.
- Wenn Sie bereits eine Antwort gefunden haben, können Sie sie erneut spielen.
- Wenn Sie dieselbe Antwort mehrmals Golf spielen, ist Ihre Punktzahl für diese Antwort die Summe Ihrer Ermäßigungen.
- Wenn Sie beispielsweise 10 Zeichen aus einem Programm entfernen und später weitere 15 sowie 7 Zeichen aus einer anderen Antwort entfernen, beträgt Ihre Gesamtpunktzahl (10 + 15) * 7 = 175.
- Dies gilt unabhängig davon, ob jemand anderes das Programm zwischen Ihren Golfspielen gespielt hat.
- Sie können Ihre eigene Antwort Golf, aber Sie erhalten keine Punkte dafür.
Gewinner
Ich werde versuchen, diese Bestenliste regelmäßig zu aktualisieren. Wenn mir ein Fehler unterläuft, lassen Sie es mich bitte wissen, oder Sie können diesen Beitrag selbst bearbeiten.
Top Bowler
- Dennis (CJam): 1,17 × 10 678
- Pppery (CPython 3.6.2): 25984
- OldCurmudgeon (Java): 278
Top-Golfer
- jimmy23013: 10 5,2 * 10 152
- Martin Ender: 2,8 * 10 14484
- Pppery: 2 * 10 4111
Antworten:
CJam, 1,17 × 10 678 Bytes
Nun, die Saite sollte tatsächlich 1.167.015.602.222.203.651.546.923.533.233.456.645.527.427.020.625.754.322.603.554.937 enthalten , 551,735,592,092,356,520,085,507,613,447,896,812,875,213,856,544,974,386,642,866,232,121,069,637,599 , 975,236,272,634,227,913,998,493,360,693,139,149,236,571,503,883,331,020,249,908,672,008,574,221,022 , 612.893.546.658.640.986.973.481.700.267.591.531.514.666.040.606.217.610.439.998.612.592.897.511.421.801.308.639.396.208.196.301.077.376.577.788.009.239.468.384.204.073.426.482.794.344.190.683.235.393.373.061.689.668.389.239.477.158.591.879.792.606.717.529.814.802.500.558.822.508.662.266.027.694.882.649.391.373.447.012.817.270.871.840.254.480.631.579.732.459.294.193.158.457.158.597.836.239.348.386.288.579.699.763.150.579.966.400.972.286.547.196.034.472.447.664.813.466.769.145.983.290.696.497.053.781.354.086.441.505.174.165.846,491,136,000,001,121,501,860,331,520,000,000,004,508,876,800,000,000,000,000,126 Kommas, aber der Editor hat mich nicht den gesamten Code posten lassen ... :(
quelle
Python, 176 Bytes
Kein Bowler, aber ...
quelle
9
, was meines Erachtens gegen die Regeln verstößt .t+10
aus heiterem Himmel kam, wusste nicht, dass es tatsächlich mit dem 't' von 'list', der '10' von 'n = 100' und so weiter gemacht wurde. Jetzt verstehe ich, was diese Art von Herausforderung wirklich interessant macht!CJam, 9,44 × 10 284
Die Zeichenfolge enthält tatsächlich 943.611.762.745.112.544.157.801.937.289.871.933.621.396.073.807.297.328.579.826.246.436.861.144.651.900.144.172.793.266.430.374.467.343.433.363.000.182.294.622.535.895.774.344.720.689.882.873.880.571.351.234.260.849.874.055.687.224.065.790.608.381.303.357.434.711.286.607.328.858.338.155.948.406.237.564.203.055.794.077.541.968.210.416.550.049.644.382.519.576.532.604.460.863.849 d's.
Beachten Sie, dass das dekodierte Programm im Online-Interpreter langsam ist.
quelle
CJam, 9,44 × 10 284
Die Zeichenfolge enthält tatsächlich 943.611.762.745.112.544.157.801.937.289.871.933.621.396.073.807.297.328.579.826.246.436.861.144.651.900.144.172.793.266.430.374.467.343.433.363.000.182.294.622.535.895.774.344.720.689.882.873.880.571.351.234.260.849.874.055.687.224.065.790.608.381.303.357.434.711.286.607.328.858.338.155.948.406.237.564.203.055.794.077.541.968.210.416.550.049.644.382.519.576.532.604.460.863.849 Komma.
quelle
,
, also interessiert uns nur die Länge. Der eigentliche Code, den ich ausführen möchte, istea~i_),1f+_m*{_~{_@\%}h;1=\~>&},\(=~'/@
, und dies konvertiert das Programm in Base44 44#
.CJam, 3,8 × 10 87 Bytes
Die Saite enthält 3.796.014.014.685.742.661.874.542.600.705.111.677.820.370.270.684.231.907.254.743.435.585.669.980.653.218.774.219.157 D's.
Das Generatorskript für die vorherige Version dieser Antwort, die später nützlich sein kann:
quelle
'b
...Java - 278
Ungolfed:
Originalfassung
Ich habe nicht versucht, diese Lösung willkürlich zu erweitern. Ich bin mir nicht sicher, ob ich dadurch Punkte bekomme oder verliere. Es ist jedoch eine korrekte Lösung, die für sehr große Zahlen funktioniert.
quelle
1/2
sollte die 1., nicht die 0. Fraktion sein, und die 5. Fraktion sollte3/4
der Frage entsprechen.import
Zeilen zu kompilieren ?CPython 3.6.2, 25984 Bytes
Diese Antwort wurde erstellt, indem der Code der Python-Antwort von Soham Chowdhury durch den Cracker portiert wurde, den ich für die Cop-Antworten von wizzwizz4 auf eingeschränkte Mini-Challengs geschrieben habe .
Ich hoffe, ich verstoße nicht gegen eine Regel gegen Beiträge zu alten Cops-and-Robbers- Herausforderungen.
quelle
d
Ruby,
487 411 376 346 340213 BytesBeginnend mit einem eher "normal aussehenden" Programm; Neugierig zu sehen, was für schreckliche Dinge Sie damit anstellen können.
quelle
denumerator
stattdenominator