Il s'agit d'un nouveau type de défi inspiré par le problème de récupération du code source muté .
Vous devez écrire deux programmes ou fonctions dans la même langue. Le premier doit résoudre la tâche n ° 1 et le second doit résoudre la tâche n ° 2.
Votre score sera la somme du programme le plus long et de la distance Levenshtein entre le code source des deux programmes. Un score plus bas est préférable, vous devriez donc essayer de rendre les deux solutions similaires tout en gardant la durée des programmes courte.
Tache 1
On vous donne un entier positif N
et vous devez sortir la séquence Collatz de N
séparés par des espaces ou saut de ligne. Le séparateur de fin est autorisé.
Le premier élément de la séquence Collatz est N
. Les autres éléments sont générés en fonction de leur successeur :
Dès que la séquence atteint, 1
aucun nouvel élément n'est généré.
Entrée => Exemples de sortie:
6 => 6 3 10 5 16 8 4 2 1
8 => 8 4 2 1
1 => 1
Tâche n ° 2
Une paire de nombres premiers jumeaux est une paire d'entiers positifs dont la différence est 2 et ils sont tous les deux des nombres premiers.
On vous donne un entier positif N
et vous devez sortir la plus petite paire de nombres premiers jumeaux où les deux nombres premiers sont plus grands que N
le premier nombre doit être le plus petit et les deux nombres premiers doivent être séparés par des espaces ou une nouvelle ligne. Le séparateur de fin est autorisé.
Entrée => Exemples de sortie:
6 => 11 13
42 => 59 61
1 => 3 5
Extrait pour calculer le score
(Modification de celle du problème Récupérer le code source muté .)
Éditer
Dans l'en-tête des réponses, utilisons le format
[Language], [longer length] + [distance] = [final score]
.
Par exemple
Python 2, 60 + 32 = 92
3 5
pour l'entrée 3 sur les paires principales. Il devrait sortir5 7
.05AB1E , 14 +
13109 =272423-4 score grâce à ASCII uniquement
Séquence Collatz (14 octets):
Essayez-le en ligne!
Nombre premier double (14 octets):
Essayez-le en ligne!
Golfed Twin Prime (11 octets):
Essayez-le en ligne!
la source
,,
, et pourquoi neÐ,
fonctionne que là-bas)Java 8, 118 + 84 = 202
Collatz:
Premiers jumeaux:
la source
Mathematica, 53 + 29 = 82
Séquence de Collatz:
Programme Twin Prime:
la source
> <> , 116 + 86 = 202
Programme Collatz (46):
Programme de nombres premiers jumeaux (116):
Aie. Les deux programmes commencent avec la même
atoi
fonction, mais après cela, les nombres premiers jumeaux descendent. Le même morceau de code est répété deux fois pour le contrôle de primalité - il pourrait être légèrement plus court pour réutiliser le morceau, mais sa configuration ne sauverait pas beaucoup d'octets.Pourrait faire beaucoup mieux en jetant la moitié arrière des nombres premiers jumeaux dans les endroits inutilisés du programme Collatz, mais je ne sais pas si cela est autorisé.
la source
Distance C ++ = 114 Longueur plus longue = 155 Score = 269
Tache 1
Tâche 2
Tâche 2 améliorée
la source
int p(int x){int z=0;for(int i=2;1<x;i++){cout<<x<<' ';x=(x%2==0)?x/2:x*3+1;}cout<<x;return z;}