Introduction (peut être ignoré)
Mettre tous les nombres positifs dans son ordre régulier (1, 2, 3, ...) est un peu ennuyeux, n'est-ce pas? Voici donc une série de défis autour des permutations (remaniements) de tous les nombres positifs. Il s'agit du troisième défi de cette série (liens vers les premier et deuxième défis).
Dans ce défi, nous allons organiser les nombres naturels en rangées de longueur croissante de telle sorte que la somme de chaque ligne soit un nombre premier. Ce que je trouve vraiment étonnant à ce sujet, c'est que chaque nombre naturel a sa place dans cet arrangement. Aucun numéro n'est ignoré!
Cette visualisation de cet arrangement ressemble à ceci:
row numbers sum
1 1 1
2 2 3 5
3 4 5 8 17
4 6 7 9 15 37
5 10 11 12 13 21 67
6 14 16 17 18 19 23 107
etc.
Nous pouvons lire les éléments des lignes de ce triangle. Les 20 premiers éléments sont: 1, 2, 3, 4, 5, 8, 6 , 7, 9, 15, 10, 11, 12, 13, 21, 14, 16, 17, 18, 19 ( oui, il y a une chanson de New Order cachée dans cette séquence ).
Puisqu'il s'agit d'un défi de "séquence pure", la tâche consiste à sortir pour un donné en entrée, où est A162371 .
Tâche
Étant donné une entrée entière , sortie au format entier.
est défini comme le ième élément de la permutation lexicographiquement la plus ancienne des nombres naturels de sorte que, lorsqu'il est vu comme un triangle lu par des lignes, pour n> 1, les sommes des lignes sont des nombres premiers. Puisque la première permutation lexicographique des nombres naturels commence par 1, est 1. Notez que selon cette définition, et n'estpastenu d'être premier. Il s'agit de la séquence OEISA162371.
Remarque: l'indexation basée sur 1 est supposée ici; vous pouvez utiliser une indexation basée sur 0, donc , etc. Veuillez le mentionner dans votre réponse si vous choisissez de l'utiliser.
Cas de test
Input | Output
---------------
1 | 1
5 | 5
20 | 19
50 | 50
78 | 87
123 | 123
1234 | 1233
3000 | 3000
9999 | 9999
29890 | 29913
Règles
- L'entrée et la sortie sont des entiers (votre programme devrait au moins prendre en charge l'entrée et la sortie dans la plage de 1 à 32 767)
- Une entrée non valide (0, flottants, chaînes, valeurs négatives, etc.) peut entraîner une sortie imprévue, des erreurs ou un comportement (non) défini.
- Règles d'E / S par défaut s'appliquent.
- Les failles par défaut sont interdites.
- Il s'agit de code-golf , donc les réponses les plus courtes en octets l'emportent