L'obiettivo
Scrivi un programma o una funzione che, quando viene passato un input numerico x, stampa o restituisce i numeri primi sotto la radice quadrata di x1 che non sono fattori x.
Esempi
Lascia che f(x)sia la funzione chiamata:
>>> f(4)
[]
>>> f(5)
[2]
>>> f(20)
[3]
>>> f(60)
[7]
>>> f(100)
[3, 7]
>>> f(10000)
[3, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
Regole bonus
- È possibile utilizzare qualsiasi builtin fornito dalla propria lingua.
- Il tuo programma deve supportare un
xinput alto come il limite superiore definito dalla tua lingua.
1 L' uso della radice quadrata come solo numeri primi sotto la radice quadrata può effettivamente essere coinvolto nei fattori di x. Senza questa limitazione, numeri più grandi avrebbero molti numeri stampati in eccesso.
x" non è vero: un numero può avere un fattore primo più grande della sua radice quadrata. In effetti, i tuoi primi due esempi (5 e 20) hanno questa proprietà, così come tutti i numeri primi, il doppio di tutti i numeri primi dispari, ....