(Inspiré au hasard par /mathpro//q/339890 )
(Connexes: 1 , 2 )
Étant donné une liste d'entrée de nombres premiers distincts (par exemple, [2, 5, 7]
) et un entier n
, sortez tous les entiers positifs strictement inférieurs à ceux n
qui ne contiennent que ces nombres premiers comme diviseurs. Pour l' entrée [2, 5, 7]
et n=15
cela signifie une sortie [2, 4, 5, 7, 8, 10, 14]
.
Autres exemples
[list] n | output
[2, 5, 7] 15 | [2, 4, 5, 7, 8, 10, 14]
[2, 5, 7] 14 | [2, 4, 5, 7, 8, 10]
[2] 3 | [2]
[2] 9 | [2, 4, 8]
[103, 101, 97] 10000 | [97, 101, 103, 9409, 9797, 9991]
[97, 101, 103] 104 | [97, 101, 103]
Règles et clarifications
- La liste d'entrée est garantie non vide, mais peut être un seul élément
- Vous pouvez supposer que la liste d'entrée est pré-triée de la manière la plus pratique
n
sera toujours plus grand que le plus grand élément de la liste d'entrée- Depuis, par exemple,
2**0 = 1
vous pouvez éventuellement inclure1
dans votre liste de sortie - L'entrée et la sortie peuvent être fournies par n'importe quelle méthode pratique
- Vous pouvez imprimer le résultat dans STDOUT ou le renvoyer comme résultat de fonction
- Un programme complet ou une fonction sont acceptables
- Le cas échéant, vous pouvez supposer que les entiers d'entrée / sortie correspondent à la
int
plage native de votre langue - Les failles standard sont interdites
- Il s'agit de code-golf donc toutes les règles de golf habituelles s'appliquent et le code le plus court (en octets) gagne
1
dans la sortie.
[2, 3, 7]
vous ne pouvez pas utiliser 5
.