Os primos recursivamente primos são sequências de primos tais que
p(1) = 2
p(n) = the p(n-1)th prime
Aqui está um exemplo de como se pode calcular o 4º Recursivamente Prime Prime.
p(4) = the p(3)th prime
p(3) = the p(2)th prime
p(2) = the p(1)th prime
p(1) = 2
p(2) = the 2nd prime
p(2) = 3
p(3) = the 3rd prime
p(3) = 5
p(4) = the 5th prime
p(4) = 11
Você deve escrever um programa ou função que, quando dado n, gera o enésimo nono Recursively Prime Prime.
Você pode optar por usar a indexação baseada em 0, se desejar, caso em que deve indicar isso em sua resposta.
Isso é código-golfe, portanto, o objetivo é minimizar sua contagem de bytes.
Casos de teste
1 -> 2
2 -> 3
3 -> 5
4 -> 11
5 -> 31
6 -> 127
7 -> 709
8 -> 5381
9 -> 52711
Entrada OEIS relevante: OEIS A007097
⁸
.¡
só aceita nilads como repetições e o padrão é a entrada se nenhuma for encontrada?<f><n>¡
aceita alegremente átomos monádicos ou diádicos<n>
. No entanto, se<f>
for um nilad, algo deve estar errado; portanto, ele é analisado<f>¡
e recebe a última entrada (último argumento da linha de comando, STDIN é que não há)<n>
.JavaScript (ES6), 71 bytes
Sem jogar, você tem três funções recursivas separadas:
P
determina sen
é primo;N
encontra on
primeiro primo;p
recursivamente é executadoN
nos1
n
tempos de entrada .fonte
MATL , 6 bytes
Experimente online!
Explicação
fonte
R,
9893 bytes5 bytes graças a @smci
Aqui está uma solução recursiva terrivelmente ineficiente:
Saída de teste:
fonte
a<-ifelse(m==0,j,f(m-1,j))
if
usado assim antes ... muito legal !!Bash + utilitários comuns, 55
Como estamos fazendo primos recursivos, aqui está uma resposta recursiva:
Como a contagem do nível de recursão é baseada
$SHLVL
na variável interna, a resposta pode ser desativada se você já tiver alguns níveis de shell. Provavelmente é por isso que esta resposta não funciona no TIO.Se isso não for bom, então aqui está uma resposta mais convencional:
Bash + utilitários comuns, 58
Experimente online .
fonte
Haskell , 58 bytes
Indexado 1
Experimente online!
Explicação:
Usa o mesmo truque de acesso à lista prime indexado em 0 que a resposta de Adnan .
Essencialmente, a linha reta segue a especificação de outra forma.
fonte
05AB1E , 4 bytes
Experimente online!
Explicação
fonte
Maravilha , 23 bytes
1 indexado. Uso:
Explicação
fonte