Fortemente ispirato dalla programmazione di un mondo incontaminato . Anche strettamente legato a questa sfida .
Definiamo un numero primo incontaminato come un numero che è esso stesso primo, ma non sarà più primo se rimuovete una sottostringa contigua di N base 10 cifre, dove 0 < N < digits in number
.
Ad esempio, 409 è un numero primo incontaminato perché 409 stesso è primo, ma tutti i numeri risultanti dalla rimozione di una sottostringa di 1 cifra non sono primi:
40
49
09 = 9
e tutti i numeri risultanti dalla rimozione di sottostringhe di lunghezza 2 non sono primi:
4
9
D'altra parte, il numero primo 439 non è incontaminato. La rimozione delle diverse sottostringhe comporta:
43
49
39
4
9
Mentre 49, 39, 4 e 9 sono tutti non primi, 43 è primo; quindi, 439 non è incontaminato.
2, 3, 5 e 7 sono banalmente incontaminati, dal momento che non è possibile rimuovere alcuna sottostringa.
Sfida
La tua sfida è quella di creare un programma o una funzione che includa un numero intero positivo N e produca l'ennesimo pristine prime. Il codice dovrebbe terminare in meno di 1 minuto su qualsiasi PC moderno per qualsiasi input fino a 50.
Vince il codice più breve in byte.
Come riferimento, ecco i primi 20 numeri primi incontaminati:
N Pristine prime
1 2
2 3
3 5
4 7
5 11
6 19
7 41
8 61
9 89
10 409
11 449
12 499
13 821
14 881
15 991
16 6299
17 6469
18 6869
19 6899
20 6949
Ecco un elenco completo di numeri primi incontaminati fino a 1e7 o N = 376.
Infine, ecco due voci OEIS correlate: