Un'altra sequenza, un'altra sfida. *
Definizione
Un primo p
è in questa sequenza, chiamiamola A
, se e solo se per ogni cifra d
in p
sviluppo decimale 's, si sostituisce d
con d
copie d
e l'intero risultante è ancora prime; gli zeri non sono ammessi.
Ad esempio, 11
è banalmente in questa sequenza (è il primo numero, per inciso). Il prossimo nella sequenza è 31
, perché 3331
è anche primo; allora 53
perché 55555333
è anche primo, e così via.
Sfida
Dato un input n
, return A(n)
, ovvero l' n
elemento th in questa sequenza.
Esempi
Ecco i primi 20 termini per iniziare. Questo è A057628 su OEIS.
11, 31, 53, 131, 149, 223, 283, 311, 313, 331, 397, 463, 641, 691, 937, 941, 1439, 1511, 1741, 1871
Ciò significa A(0) = 11
, A(1) = 31
ecc., Quando si utilizza l'indicizzazione zero.
Regole
- È possibile scegliere l'indicizzazione con zero o uno basato; si prega di specificare nella risposta quale.
- Invece di restituire solo l'
n
elemento th, puoi invece scegliere di restituire i primin
termini. - Puoi presumere che l'input / output non sarà più grande del formato intero nativo della tua lingua; tuttavia, il numero primo a cifre ripetute potrebbe essere più grande del formato nativo della tua lingua, quindi sarà necessario tenerne conto.
- Ad esempio,
1871
l'ultimo numero degli esempi ha un numero primo corrispondente18888888877777771
, che è un po 'più grande dello standard INT32. - È accettabile un programma completo o una funzione. Se una funzione, è possibile restituire l'output anziché stamparlo.
- L'output può essere sulla console, restituito da una funzione, visualizzato in un popup di avviso, ecc.
- Sono vietate le scappatoie standard .
- Si tratta di code-golf, quindi si applicano tutte le normali regole del golf e vince il codice più breve (in byte).
* Per essere onesti, avevo escogitato i primi termini della sequenza solo giocando con alcuni numeri, e poi sono andato a OEIS per ottenere il resto della sequenza.
169
sé non è primo, lo è 13 * 13
.