C'est un défi de flics et de voleurs . Le fil des flics à ce défi est ici
Une question intéressante à considérer est la suivante:
Si j'ai une séquence de nombres, combien dois-je fournir avant de savoir de quelle séquence je parle?
Par exemple, si je veux parler des entiers positifs dans l'ordre à partir de , je pourrais dire , mais est-ce vraiment suffisant?
J'ai une façon de répondre à cette question, et d'être un golfeur de code Cela implique le golf de code. Vous avez fourni suffisamment de termes d'une séquence si le code le plus court qui produit ces termes produit tous les termes de la séquence. Si nous pensons à cela en termes de code-golf, cela signifierait que vous avez fourni suffisamment de cas de test pour que le code le plus court qui réussit les cas de test fasse la tâche souhaitée.
Défi
Ce défi est un défi de flics et de voleurs . Dans lequel les flics présenteront des cas de test et les voleurs devront trouver un moyen plus court d'usurper les cas de test autres que la séquence prévue. Les flics présenteront les choses suivantes:
Un morceau de code qui prend un entier positif en entrée et produit un entier en sortie. Ce code peut être zéro ou un indexé, mais il doit être clair ce qu'est l'indexation. Ce code définira votre séquence.
Toute exigence de plate-forme ou de langue pertinente pouvant affecter la sortie, par exemple la taille de l'entier long.
Un nombre , ainsi que les n premiers termes de la séquence tels que calculés par le code. Ceux-ci serviront de "cas de test".
Les voleurs trouveront un programme dans le même langage qui est plus court que celui présenté et réussit tous les cas de test (produit la même sortie pour les premières entrées que le code du flic). Le code du voleur doit également différer en sortie du programme du flic pour un nombre supérieur à n .
Notation
Les voleurs seront notés dans le nombre de fissures qu'ils trouvent, plus il y a de fissures, mieux c'est. Une réponse peut être craquée à nouveau en trouvant une réponse valide plus courte que la fissure d'origine. Si une réponse est crackée une deuxième fois, le point est donné au deuxième cracker plutôt qu'au premier.