C'est un défi de flics et de voleurs . Pour le fil des voleurs, allez ici .
Ce défi implique deux séquences OEIS choisies par les flics - S 1 , S 2 - et comment ces séquences peuvent être jouées et masquées.
Le défi des flics
Votre défi en tant que flic est de choisir une langue disponible gratuitement et deux séquences OEIS. Ensuite, écrivez le code A dans ce langage qui prend l'entrée n et produit S 1 (n). Lorsque ce code est modifié par une distance Levenshtein de X caractères (avec X pas plus 0.5 * (length A)
), et transformé en code B dans la même langue, il doit alors produire S 2 (n). Vous devez réellement écrire ce code B , mais ne le révélez pas tant que votre défi n'est pas sûr (voir ci-dessous).
Les soumissions des flics doivent inclure le nom de la langue, le code complet A , le nombre d'octets de A , la valeur X du nombre de modifications à apporter à leur code B secret et les numéros de séquence S 1 et S 2 choisis . Vous pouvez choisir si chaque séquence est indexée 0 ou indexée 1, mais veuillez le préciser dans votre soumission.
Pour casser une soumission particulière, les voleurs doivent proposer un programme C dans le même langage (et la même version) qui produit S 2 (n) et les changements de caractère Y s'éloignent de A (avec Y <= X
). Les voleurs n'ont pas nécessairement besoin de trouver exactement le même code B que le flic (secrètement) a produit.
Gagner et marquer
Si votre réponse de flic n'a pas été révélée dans les 7 jours (168 heures), vous pouvez révéler votre propre solution B , moment auquel votre réponse est considérée comme sûre. Tant que vous ne dévoilez pas votre solution, elle peut toujours être piratée par des voleurs, même si les 7 jours se sont déjà écoulés. Si votre réponse est fissurée, veuillez l'indiquer dans l'en-tête de votre réponse, ainsi qu'un lien vers la réponse du voleur correspondant.
Cops gagner en ayant la soumission uncracked avec les plus brefs A . En cas d'égalité, le plus petit X sera utilisé comme briseur d'égalité. S'ils sont toujours à égalité, la soumission précédente gagnera.
Règles supplémentaires
- Vous ne devez utiliser aucune fonction intégrée pour le hachage, le chiffrement ou la génération de nombres aléatoires (même si vous amorcez le générateur de nombres aléatoires sur une valeur fixe).
- Les programmes ou les fonctions sont autorisés, mais le code ne doit pas être un extrait de code et vous ne devez pas assumer un environnement REPL.
- Vous pouvez prendre une entrée et donner une sortie dans n'importe quel format pratique . Les méthodes d'entrée / sortie doivent être les mêmes pour les deux séquences.
- Le calculateur définitif pour la distance de Levenshtein pour ce défi est celui-ci sur Planet Calc.
- En plus d'être un défi CnR, il s'agit de code-golf, donc toutes les règles de golf habituelles s'appliquent.
(0.5*len(A))