Dies ist eine Herausforderung für Bullen und Räuber . Für den Räuber Faden, gehen hier .
Diese Herausforderung beinhaltet zwei OEIS- Sequenzen, die von den Cops ausgewählt wurden - S 1 , S 2 - und wie gut diese Sequenzen golfen und verschleiert werden können.
Die Herausforderung der Bullen
Ihre Herausforderung als Polizist besteht darin, eine frei verfügbare Sprache und zwei OEIS-Sequenzen auszuwählen . Dann schreibe Code A in die Sprache, die die Eingabe n nimmt und S 1 (n) erzeugt. Wenn dieser Code um einen Levenshtein-Abstand von X Zeichen (wobei X nicht mehr als 0.5 * (length A)) geändert und in Code B in derselben Sprache umgewandelt wird, muss er S 2 (n) erzeugen . Sie müssen diesen Code B tatsächlich schreiben , aber nicht offenlegen, bis Ihre Herausforderung sicher ist (siehe unten).
Die Cops müssen den Namen der Sprache, den vollständigen Code A , die Anzahl der Bytes von A , den X- Wert für die Anzahl der Änderungen an ihrem geheimen B- Code und die gewählten S 1 - und S 2 -Sequenznummern enthalten. Sie können wählen, ob jede Sequenz 0-indiziert oder 1-indiziert ist. Bitte geben Sie dies in Ihrer Einreichung an.
Um einen bestimmten Beitrag zu knacken, müssen Räuber ein Programm C in derselben Sprache (und Version) entwickeln, das S 2 (n) erzeugt und bei dem das Y- Zeichen von A (mit Y <= X) abweicht. Räuber müssen nicht unbedingt denselben B- Code finden, den der Cop (heimlich) produziert hat.
Gewinnen und Punkten
Wenn Ihre Antwort nicht innerhalb von 7 Tagen (168 Stunden) geknackt wurde, können Sie Ihre eigene B- Lösung aufdecken. Zu diesem Zeitpunkt gilt Ihre Antwort als sicher. Solange Sie Ihre Lösung nicht preisgeben, kann sie auch dann von Räubern geknackt werden, wenn die sieben Tage bereits verstrichen sind. Wenn Ihre Antwort geknackt wird, geben Sie dies bitte in der Kopfzeile Ihrer Antwort zusammen mit einem Link zur Antwort des entsprechenden Räubers an.
Polizisten gewinnen, indem sie die ungerissene Vorlage mit dem kürzesten A haben . Wenn es gebunden ist, wird das kleinste X als Unterbrecher verwendet. Wenn immer noch unentschieden, gewinnt die frühere Einreichung.
Weitere Regeln
- Sie dürfen keine integrierten Funktionen zum Hashing, zur Verschlüsselung oder zur Generierung von Zufallszahlen verwenden (auch wenn Sie den Zufallszahlengenerator auf einen festen Wert setzen).
- Es sind entweder Programme oder Funktionen zulässig, aber der Code darf kein Snippet sein und Sie dürfen keine REPL-Umgebung annehmen.
- Sie können Eingaben und Ausgaben in jedem beliebigen Format vornehmen . Die Eingabe- / Ausgabemethoden müssen für beide Sequenzen gleich sein.
- Der endgültige Rechner für die Levenshtein-Distanz für diese Herausforderung ist dieser auf Planet Calc.
- Dies ist nicht nur eine CnR-Herausforderung, sondern auch Code-Golf. Daher gelten alle üblichen Golfregeln.
(0.5*len(A))