Eu sei, eu sei, mais um desafio primos ...
Um nobre solitário (ou isolado) é um número primo p
tal que p-2
, p+2
, p-4
, p+4
... p-2k
, p+2k
para alguns k
são todos composta. Chamamos esse primo de primo k
th-times-isolated.
Por exemplo, um primo da quinta vez isolado é 211
, pois todos 201, 203, 205, 207, 209, 213, 215, 217, 219, 221
são compostos. ( p-2*5=201
, p-2*4=203
, Etc.)
Desafio
Dado dois números inteiros de entrada, n > 3
e k > 0
, produz o menor k
primo th vezes isolado que é estritamente maior que n
.
Por exemplo, para k = 5
e n
em qualquer faixa 4 ... 210
, a saída deve ser 211
, pois esse é o menor primo isolado da quinta vez estritamente maior que a entrada n
.
Exemplos
n=55 k=1
67
n=500 k=1
503
n=2100 k=3
2153
n=2153 k=3
2161
n=14000 k=7
14107
n=14000 k=8
14107
Regras
- Se aplicável, você pode supor que a entrada / saída caiba no tipo Inteiro nativo do seu idioma.
- A entrada e saída podem ser fornecidas por qualquer método conveniente .
- Um programa completo ou uma função são aceitáveis. Se uma função, você pode retornar a saída em vez de imprimi-la.
- As brechas padrão são proibidas.
- Isso é código-golfe, portanto todas as regras usuais de golfe se aplicam e o código mais curto (em bytes) vence.
code-golf
number-theory
primes
AdmBorkBork
fonte
fonte
k
TH-vezes-isolado é também, por definição, umk-1
th,k-2
th, etc.Respostas:
Geléia ,
1713 bytesExperimente online!
Como funciona
fonte
Casca , 13 bytes
Experimente online!
Explicação
Bem direto.
fonte
Java 8,
144143 bytesExplicação:
Experimente online.
fonte
Python 2 ,
105104 bytes-1 byte graças a ovs
Experimente online!
fonte
Stax , 14 bytes
Execute e depure
Esta é a representação ascii correspondente.
fonte
JavaScript (Node.js) ,
949289 bytesExperimente online!
Misteriosamente, mais jogadores acabam com o estouro da pilha. Somente isso funciona no tamanho de 14000.Finalmente, um golfe que não vai acabar com um estouro de pilha em 14000.
Explicação
fonte
C (gcc) , 113 bytes
Experimente online!
fonte
Ruby +
-rprime
,73716157 bytesExperimente online!
É bom estar aprendendo! Estou
usando as técnicasse perder no mato de técnicas divertidas ...Integer#[]
eredo
que aprendi aqui no PPCG.-1 byte: use em
n%2
vez den[0]
para obter o bit menos significativo. Obrigado, Asone Tuhid !-1 byte: use um operador ternário em vez de uma expressão booleana. Obrigado, Asone Tuhid !
-10 bytes: use o operador XOR para evitar digitar
.prime?
duas vezes ... Esta é a resposta de Asone Tuhid tanto quanto a minha agora :)-4 bytes: não há mal nenhum em verificar valores pares de
n
. Asone Tuhid é ininterrupto.Ungolfed:
fonte
-rprime
, 73 bytesn%2
é menor quen[0]
neste caso e?...:
pode ser menor que&&...||
n%2+
" era inútilPari / GP , 55 bytes
Experimente online!
fonte
Perl 6 , 63 bytes
Experimente online!
fonte