Contribution
aucune entrée pour ce défi
Le défi
Ecrivez un code qui donne:
Les 10 premiers nombres premiers dont la somme de leurs chiffres est égale au nombre d'octets de votre code
Exemples
Disons que votre code est Co&%423@k"oo"
ce qui est 13 bytes
votre code doit sortir [67, 139, 157, 193, 229, 283, 337, 373, 409, 463]
ce sont les 10 premiers nombres premiers dont la somme .... ok vous l'avez!
Si votre code est 8 bytes
, vous devez générer[17, 53, 71, 107, 233, 251, 431, 503, 521, 701]
Règles
Vous devez utiliser uniquement les 10 ^ 8 premiers nombres premiers,
ce qui signifie que tous vos nombres doivent être <2038074743 = 10 ^ 8e prime
Si vous ne trouvez pas 10 nombres premiers dans cette plage qui correspondent à vos octets, vous devrez alors ajuster votre code (vous devrez peut-être même ajouter quelques octets!) Afin de trouver un " nombre de travail en octets ".
Vous n'avez qu'à sortir les 10 nombres premiers comme vous le souhaitez
C'est du code-golf , donc le code le plus court en octets gagne!
Réponses:
Neim ,
1087 octets-1 octet grâce à ASCII uniquement.
Essayez-le en ligne!
Les sorties:
Ceci (du moins l'approche) est non-golfable.
Explication
la source
νᛦ𝐋Λ𝐬7𝔼
pour 7 ... modifier:π
->ν
: pGelée , 14 octets
Essayez-le en ligne!
Cela imprime:
Comment ça marche
la source
Pyth , 14 octets
Essayez ici.
C'est 14 octets et affiche:
Pyth , 16 octets
Essayez-le ici!
Notez que cela pourrait être 15 octets:,
.f&qssM`Z16P_ZTZ
mais il n'y a pas de nombres premiers qui ont 15 comme somme de leurs chiffres, car15
est divisible par3
, ce qui impliquerait que le nombre serait également divisible par3
, donc n'est pas premier.C'est 16 octets de long et affiche:
Comment?
Explication 1
Explication 2
la source
Coque , 13 octets
Essayez-le en ligne!
Explication
la source
Haskell ,
7771 octetsEssayez-le en ligne!
Économisé 6 octets grâce à Laikoni
Pour 71 octets:
1999999999 est le nombre avec la somme maximale de chiffres dans la plage autorisée, et cette somme est 82. Tout programme dont la taille excède 82 octets ne remplira pas la condition. J'espère que 77 octets c'est bien, mais je ne sais pas (ça fonctionne toujours sur mon ordinateur).
EDIT: une version légèrement optimisée donnait pour 77 octets:
la source
Gelée ,
14 à13 octetsEssayez-le en ligne!
Comment?
la source
Brachylog , 13 octets
Essayez-le en ligne!
la source
05AB1E , 10 octets
Essayez-le en ligne!
Le
}
est utilisé comme remplissage, car 9 est un nombre d'octets invalide.Sortie:
[19, 37, 73, 109, 127, 163, 181, 271, 307, 433]
Explication
Presque 8 octets
Cela serait valable si un octet supplémentaire pouvait être ajouté au golf.
Essayez-le en ligne!
Sortie:
[17, 53, 71, 107, 233, 251, 431, 503, 521, 701]
Explication
la source
Mathematica, 52 octets
merci à @Not un arbre pour -6 octets
la source
Select
combien de choses vous voulez retourner:Select[Prime@Range[10^6],Tr@IntegerDigits@#==52&,10]
Select[Prime@Range[77705],Tr@IntegerDigits@#==50&]
J, 29 octets
Essayez-le en ligne!
Fonctionne certainement sur le REPL, fonctionne probablement aussi sur un programme régulier (je ne sais pas comment J effectue la sortie pour que les programmes soient honnêtes).
Premier passage, pas particulièrement idéal, mais je ne vois pas d’approches plus intelligentes. Aller enquêter sur le codage en dur d'une séquence plus petite.
Explication
872 garantit que seuls les 10 premiers nombres premiers dont la somme numérique est 29 seront utilisés.
la source
V ,
7371 octetsEssayez-le en ligne!
Compression simple de remplacement de sous-chaîne - J'ai vérifié toutes les sorties de réponse possibles, puis j'ai testé "dont l'une remplace une chaîne simple qui enregistre la plupart des caractères". par exemple générer cette table . [edit: J'ai encore regardé la table et j'ai vu que je pouvais faire la version à 71 octets à la place].
Les nombres premiers les plus longs ont 9 suites, et le meilleur que j'ai trouvé est celui où les chiffres totalisent 73, le motif 89999 -> 1 caractère réduit le texte de 99 à 63 octets. Trouver un moyen de défaire 'a' -> '89999' dans les 10 octets restants m'a conduit à V.
la source
Japt , 19 octets
Essaye-le
Explantaion
Génère un tableau d'entiers (
õ
) compris entre 1 et 100 (L
) au carré.Filtrer (
f
) en passant chacun à travers une fonction, oùZ
est l'élément en cours.Vérifiez si
Z
est un premier.ET logique (
&&
).Diviser
Z
en un tableau de chiffres (ì
) et réduire par addition (x
).Vérifiez l'égalité avec
19
.Slice (
¯
) vers le 10ème élément et génère implicitement le tableau résultant.la source
Japt , 19 octets
Essayez-le en ligne! avec le
-Q
drapeau pour formater le tableau.Affiche les 10 premiers nombres premiers dont les chiffres s'ajoutent à
19
:Notez que cela pourrait être joué au golf à 18 octets (
ì x
→ìx
), mais il n’existe pas de nombres premiers avec une somme de 18.Explication
Mappez le tableau
[0, ..., 9]
à l'aide de la fonction suivante, oùX
est la valeur actuelle.Renvoie le premier entier renvoyant la valeur true à partir de la fonction suivante, où
Z
est la valeur actuelleVérifiez si ce nombre est premier et ...
La somme (
x
) des chiffres (ì
) enZ
égal à (¥
) 19,Et
X
est la fausseté («
est "et pas", ou&&!
). Cela diminue égalementX
(´
).Le tableau résultant est implicitement généré.
la source
PARI / GP, 40 octets
Pas beaucoup de golf à ce sujet (sélectionnez ceux
x
avec la somme des chiffres 40 parmi les 8600 premiers premiers). La sortie est:la source
Pyke , 10 octets
Essayez-le ici!
la source
Ruby 2.4.1, 74 octets
Je n'allais jamais battre l'un des langages optimisés pour Codegolf, mais c'était quand même amusant de le faire en Ruby. Frustrer le fait que Prime ne soit pas dans Core mais dans la bibliothèque standard. Je suis également frustré de ne pouvoir battre Haskell.
la source
Paradoc (v0.2.7 +), 10 octets (CP-1252)
Essayez-le en ligne!
Un peu discutable car il affiche tous les nombres sans séparateur. Un programme de 11 octets qui imprime chaque numéro sur une ligne distincte:
La seule chose qui mérite d’être mentionnée à ce sujet est la limite supérieure qui est légèrement plus difficile à construire:
Iè
soit 18² = 324.la source
Bubblegum , 37 octets
Essayez-le en ligne!
La sortie est
29989,39799,39979,48799,48889,49789,56989,58699,58789,58897
la source