Räuberfaden
Bei dieser Herausforderung besteht Ihr Ziel darin, von den Cops geschriebenen Code (ihr Code ist hier ) zu knacken, indem Sie ihn ändern. Sie haben ihren Code geknackt , wenn:
- Ihr geänderter Code hat einen maximalen Abstand von 10 von ihnen und weniger Zeichen
- Die Funktion erzeugt bei derselben gültigen Eingabe dieselbe Ausgabe in derselben Sprache derselben Version
- Sie haben Ihre geänderte Version innerhalb von 168 Stunden (1 Woche) nach dem ursprünglichen Beitrag veröffentlicht.
Ihr geänderter Code darf nur druckbares ASCII enthalten.
Nachdem Sie eine geknackte Version veröffentlicht haben, sollten Sie im Originalcode einen Kommentar hinterlassen, der besagt, dass sie mit einem Link zu Ihrem Riss geknackt wurde.
Ihre Punktzahl ist die gesamte Levenshtien-Distanz zwischen all Ihren Antworten. Die höchste Punktzahl gewinnt.
Den dazugehörigen Cops-Thread finden Sie hier .
primes
code-bowling
cops-and-robbers
Nathan Merrill
quelle
quelle
Antworten:
Python 3, 9500 bis 9499, von Sp3000, Abstand 10
Original
Geändert
Änderte das
\\
in\
und verschob einige zufällige Zeichen, um eine bessere Punktzahl zu erzielen.quelle
Original von Bitpwner, Python, 5199
Geänderte Version Python, 5198 Levenshtein Distance 2 :
Ersetzt
'zlib'
durch kürzeren Alias'zip'
.quelle
User23013 original CJam 7531
Geänderte Version CJam 7526 Entfernung 10
Ersetzt 5
\"
durchN
quelle
Nuuuq
ist besser, wodurch die 5 leeren Zeichenfolgen im Stapel entfernt werden.CJam, 6768, von user23013, Entfernung 10
Original
Geändert
Ich muss sagen, dass die Idee hinter dem ursprünglichen Code wirklich nett ist. Erstellen Sie eine Hashing-Funktion, bei der jedes Zeichen vom geänderten Ergebnis des vorherigen Charakters abhängt. Dies macht es unmöglich, eines der Zeichen innerhalb der Zeichenfolge zu entfernen. Sie können höchstens Zeichen am Ende entfernen. Fängt jedoch an, Zeichen aus dem eigentlichen Hauptdruckcode zu entfernen.
Das einzige, was @ user23013 verpasst hat, war, dass der Unhashing-Code noch gespielt werden konnte: D.
Ich bin mir ziemlich sicher, dass es unmöglich wäre, sie zu knacken, wenn meine geknackte Antwort die eigentliche Vorlage wäre.
quelle
PHP von Tryth, Entfernung 10
Original (3337):
Geändert (3329):
Zusätzlich zum direkten Entfernen von 8 Zeichen habe ich die einfachen Anführungszeichen gegen doppelte Anführungszeichen ausgetauscht, um das Levenshtein um 2 zu erhöhen.
quelle
Original von MickyT- R, 2496
Geänderte Version R, 2492 Levenshtein Abstand 9 :
Ersetzt
sqrt(1e8)
durch Literalwert10000
.quelle
Original von Yimin Rong (PHP):
Geänderte Version:
Entfernt
$N--,
.Geändert
$N>0
zu$N-->0
.Dann wurden alle Instanzen von
$N
auf geändert$M
.Entfernung 9 .
Dies funktioniert für negative Werte.
quelle
Original von Optimizer, CJam, 816
Geänderte Version CJam, 815 Levenshtein Distance 10
Geändert
04703657K)_#b:c~
zu4e7K)_#b:cW';t~
.quelle
:c);~;
Java, 6193 von Geobits, Entfernung 10
Original:
Geändert:
Vielleicht das nächste Mal mein Freund;)
quelle
Mathematica, von Optimizer, 21 bis 18, Abstand 10
von
zu
quelle
Python 3, 9302 bis 9301, von Sp3000, Abstand 10
Original
Geändert
quelle
Original von Timtech - TI-BASIC, 4513
Geänderte Version TI-BASIC, 4505 Levenshtein Distance 10 :
Ich habe die Länge der Zeichenfolge und des Divisors geändert
quelle
Original von Brandon C # 233 :
Geänderte Version C # 231 Levenshtein Entfernung 10 :
Die Variablennamen wurden geändert, um für neue Bewertungsregeln eine Entfernung von 10 zu erreichen.
Geänderte Version C # 231 Levenshtein Entfernung 2 :quelle
for
Schleife verpasst ?C #, Shawn Holzworth (161) , Entfernung 10
Ich habe einen Standard-Golf-Trick verwendet, um einen Charakter zu entfernen: Kurzschluss
2*n+1
nachn-~n
.quelle
Java 8, 1785, von TheBestOne, Entfernung 10
Original
Geändert
Methodenname
primes
->p
. Ich habe den Bytecode nicht berührt, lol.quelle
PHP, 73, von Yimin Rong, Entfernung 10
Original
Geändert
Entfernt
gmp_strval
, daGMP
ObjektSerializable
Schnittstelle implementiert . Demo auf ideone .quelle
Matlab, durch Fehler, Abstand 10
Original
Geänderte Version
In Zeile 3 wurde ein Leerzeichen aus dem Einzug entfernt (1 Entfernung). Geändert
char(101)
zuchar(98)
(2 Substitutionen, 1 Entfernung) und geändert die Summe von 941 auf 0 (1 Substitution und 2 Entfernungen). 3 Leerzeichen aus Zeile 4 Einzug entfernt (3 Entfernungen).Entfernung 10 .
(Beachten Sie, dass ich denke, dass der 941 im Fehlercode 1873 sein sollte. In diesem Fall kann ich nicht so viele Einrückungszeichen entfernen, aber ich kann den gleichen Levenshtein-Abstand einhalten.)
quelle
e
s in meinen ursprünglichen Quellcode ein, die hier gleich 941 sein sollten. (A prime =))15 29 49 51 60 64 76 78 86 100 126 128 137 141 179 187 191 195
.CJam, 844 bis 841, von Optimizer, Abstand 10
Original
Geändert
quelle
1225469401974
geändert zu1225469408974
.Java, TheBestOne, 485, Entfernung 10
Ich habe gerade die zwei unnötigen leeren Paare von spitzen Klammern entfernt. Der lustige Teil ist, dass es nicht einmal für mich mit ihnen kompiliert werden würde.
quelle
CJam, 847 bis 846, von Optimizer, Abstand 10
Original
Geändert
quelle
CJam, von Optimizer, 24 bis 22, Abstand 10
Von
zu
quelle
Java, 328, von TheBestOne, Entfernung 10
Original
Geändert
Ändern Sie den regulären Ausdruck
"^1?$|^(11+?)\\1+$"
in"^(11+)\\1+$"
(6 Entfernungen) und nehmen Sie an, dass die Eingabe für die Haupttestfunktion mindestens 2 beträgt (2 Hinzufügungen, 1 Tausch). Die zu testende Startnummer wurde voni = 0
bis geänderti = 1
(da die Primfunktion von aufgerufen wirdb(++i)
und daheri
von 1 ausgehen muss) (1 Swap).quelle
Gesamtpunktzahl: 10
Ursprüngliche Antwort von TheBestOne:
Geändert mit Abstand 10:
Ursprüngliche Antwort von Yimin Rong:
Geändert mit Abstand 10:
David hätte mich zu diesem schlagen können:Ursprüngliche Antwort von errorr:
Geändert mit Abstand 10:
Edit: David hat mich geschlagen.
Ursprüngliche Antwort von Yimin Rong:Geändert mit Abstand 10:
Mit dem alten Punktesystem hätte ich 10,7 bekommen.
Bearbeiten: Die Regeln ändern sich ständig. Ich denke, das zählt jetzt nicht.quelle
Java, 6193, von Geobits, Entfernung 10Nicht konkurrierend, da ich zu langsam in der Bearbeitung war. Lassen Sie es hier als Referenz.
Geändert
Um zu demonstrieren, was tatsächlich getan wurde, dieser Teil des Codes:
wird dazu transformiert:
Wenn Sie die Daten richtig ausrichten, können Sie meistens mit Swaps davonkommen.
(
vor;
gegen)
/*
und 2 Zeichen vom Ende mit*/
.*/
.Die Delta-Länge beträgt -3.
quelle