Estamos buscando una secuencia
Toma los números naturales
1,2,3,4,5,6,7,8,9,10,11,12,13,14...
Convertir a base-2
1,10,11,100,101,110,111,1000,1001,1010,1011,1100,1101,1110...
Concatenar los números anteriores
110111001011101111000100110101011110011011110...
Particionar este número en Prime-Chunks
(trozos que contienen un número primo de dígitos) Los
primos se toman en orden ascendente2,3,5,7,11,13,17...
[11][011][10010][1110111][10001001101][0101111001101][1110...]
y encuentra la suma de los dígitos de cada fragmento
Primes 2 3 5 7 11 13 17
Chunks [11][011][10010][1110111][10001001101][0101111001101][1110...]
SumOfDigits 2 2 2 6 5 8
La secuencia
2, 2, 2, 6, 5, 8, 9, 10, 14, 22, 11, 18, 25, 27, 32, 21, 28, 32, 40, 40, 49, 49, 32, 41, 49, 53, 63, 55, 63, 70, 87, 73, 51, 63, 71, 78, 78, 90, 107, 86, 96, 108, 115, 128, 138, 92, 83, 95, 102, 110, 130, 106, 122, 141, 149, 163, 130, 140, 151, 165, 181, 165, 204, 200, 234, 100, 130, 138, 167, 149, 169, 180, 209, 166, 189, 194, 222, 205, 234, 260, 216, 206, 217, 241, 240, 267, 289, 242, 274, 308, 286, 329, 338, 155, 189, 225, 197, 240, 272, 217, 254, 282, 287, 317, 281, 256, 299, 286, 331, 337, 316, 350, 354, 391, 367, 282, 327, 313, 364, 358, 348, 397, 406, 466 ...
El reto
Encuentra el nth
término de la secuencia anterior
Entrada
Un entero n>0
Casos de prueba
1->2
3->2
6->8
36->78
60->165
160->581
260->1099
350->1345
Esto es codegolf. ¡La respuesta más corta en bytes gana!
Respuestas:
Casco , 8 bytes
Pruébalo en línea!
Explicación
fuente
Jalea , 12 bytes
Pruébalo en línea!
Cómo funciona
fuente
05AB1E , 12 bytes
Código
Puede ser bastante lento para grandes cantidades:
Utiliza la codificación 05AB1E . Pruébalo en línea!
Explicación
fuente
Mathematica, 71 bytes
Pruébalo en línea!
fuente
Jalea , 21 bytes
Pruébalo en línea!
fuente
Jalea , 16 bytes
Pruébalo en línea!
Explicación
fuente
R ,
206200 bytesPruébalo en línea!
El algoritmo también trata de "ahorrar" en el espacio mediante la eliminación iterativa de bits a medida que avanza por los números primos. Siento que la conversión de decimal a bit probablemente podría ser más corta, pero no pude encontrar otras alternativas.
Guardado 6 bytes gracias a Jonathan French.
fuente
p=j=2
es dos bytes más corto quep=2;j=2
.a=p
, ahorrando otros dos bytes.y=1
, reemplazado pory=2
, dando como resultado 200 bytes .JavaScript (ES6), 144 bytes
Sin golf
Casos de prueba
Mostrar fragmento de código
fuente
Python 2 , 114 bytes
Pruébalo en línea!
fuente
JavaScript (ES6),
138132123 bytesCasos de prueba
Pruébalo en línea!
Manifestación
Nota: aquí solo se incluyen casos de prueba "seguros" (garantizados para funcionar en Chrome, Firefox y Edge). Es posible que tenga que aumentar el tamaño de la pila de llamadas de su motor para pasar a los otros.
Mostrar fragmento de código
Formateado y comentado
fuente
Perl 6 , 67 bytes
Pruébalo
Expandido:
fuente
Python 2 ,
143139133 bytes-4 bytes gracias a @ErikTheOutgolfer
Pruébalo en línea!
fuente
J, 48 bytes
explicado
Pruébalo en línea!
fuente
/.
):_1({]+//.$$&;<@#:@#\)[:#~p:@i.
JavaScript 1+ + substr, 135 bytes
fuente