Secuencias
Se le da cuatro secuencias de números, numerados 1
a través 4
.
OEIS La ubicación de
0
's cuando los números naturales se enumeran en binario. Aquí hay un ejemplo de cómo calcular la secuencia:0,1,10,11,100,101,110,111 ^ ^ ^^ ^ ^ 0 3 78 10 14
El inicio de la secuencia es así:
0, 3, 7, 8, 10, 14, 19, 20, 21, 23, 24, 27, 29, 31, 36, 37, 40, 45, 51, ...
OEIS Esta secuencia incluye el primer número natural, omite los siguientes dos, luego incluye los siguientes tres, luego omite los siguientes cuatro y continúa.
0, 3, 4, 5, 10, 11, 12, 13, 14, 21, 22, 23, 24, 25, 26, 27, 36, ...
OEIS Enteros positivos donde tanto el número de
0
's como el número de1
' s en la representación binaria del número son potencias de2
.2, 4, 5, 6, 9, 10, 12, 16, 23, 27, 29, 30, 33, 34, 36, 39,
OEIS La secuencia Q de Hofstadter .
a (1) = a (2) = 1;
a (n) = a (na (n-1)) + a (na (n-2)) para n> 2.1, 1, 2, 3, 3, 4, 5, 5, 6, 6, 6, 8, 8, 8, 10, 9, 10, 11, 11, 12, 12, 12, 12, 16, 14, ...
Poco se demuestra rigurosamente acerca de esta secuencia, pero existen muchos resultados empíricos. Uno es particularmente importante, y puede suponer que es válido para toda la serie:
Este artículo observó que los elementos de la serie se pueden agrupar en generaciones. Si los numeramos comenzando en 1, entonces la generación k contiene exactamente 2 k elementos. La propiedad relevante es que todos los números de la generación k se obtienen sumando dos números de las generaciones k-1 y / o k-2 , pero nunca de generaciones anteriores. Puede usar esta observación (y solo esta) para poner un límite inferior en los elementos restantes de la secuencia.
Desafío
Su desafío es imprimir los primeros x
números en la intersección de las secuencias de entrada dadas.
Entrada: dos números separados por un espacio en STDIN
. El primer número es un número entero de 1
al 15
incluido donde cada bit corresponde a una secuencia. El bit más bajo corresponde a la secuencia 1
y el más alto corresponde a la secuencia 4
. El segundo es la cantidad de números x
,, para generar STDIN
.
Salida: los primeros x
números que se cruzan con las secuencias de entrada dadas. Imprima los números STDOUT
con cualquier espacio en blanco o puntuación clara como delimitador (espacios, tabulaciones, líneas nuevas, comas, dos puntos, puntos, etc.).
Ejemplos
1. Imprima los primeros 3
números que están en cada secuencia.
Entrada: 15 3
Salida: 10,23,40
2. Imprima los primeros 12
números en el número de secuencias 1
y 4
.
Entrada: 9 12
Salida: 3,8,10,14,19,20,21,23,24,31,37,40
3. Imprima los primeros 10
números en secuencia 2
.
Entrada: 2 10
Salida: 0,3,4,5,10,11,12,13,14,21
4. Imprima los primeros 6
números en secuencias 3
y 4
.
Entrada: 12 6
Salida: 2,4,5,6,9,10
Detalles
- Puede imprimir la salida a medida que avanza o todo de una vez al final.
¡Muchas gracias a todos los que ayudaron con esto en el chat! Esta pregunta se benefició enormemente de estar en la caja de arena .
x
?
12 5
ejemplo hasta el mismo índice, entonces10
sí aparece antes9
en la intersección ... como, ¿cómo, al pasar por las secuencias, decidirías omitir el9
número 3 como una posible intersección? Como si el # 3 tuviera7
, entonces se le requeriría que lo omita ya que eso no aparece en el # 4