Problema 4
Bases Binaria y Negabinaria
bases.pas, bases.c, bases.cpp
Cualquier número n se puede representar en base dos (sistema binario): n = a0×20 + a1×21 + ... + am×2m, donde cada ai = 0 o ai = 1. Por ejemplo: 10 = 0×20 + 1×21 + 0×22 + 1×23, y se representa como 1010.
De igual forma cualquier número n se puede representar en base -2 (sistema nega-binario): n = a0×(-2)0 + a1×(-2)1 + ... + am×(-2)m, donde cada ai = 0 o ai = 1. Por ejemplo: 10 = 0×(-2)0 + 1×(-2)1 + 1×(-2)2 + 1×(-2)3 + 1×(-2)4, y su representación es 11110.
La números de Moser -de Bruijn son aquellos que tienen la misma representación en base 2 (binario) y en base –2 (negabinario).
Problema
Encontrar todos los números de Moser -de Bruijn en un intervalo dado.
Entrada
La entrada tendrá una sola línea con dos números enteros positivos a y b, 0 ≤ a ≤ b ≤ 1,000,000.
Salida
Tantos renglones como números de la sucesión de Moser -de Bruijn existan entre a y b, incluyendo a éstos. Debes escribir en orden creciente los números, uno por renglón. Siempre habrá al menos un número de la sucesión de Moser -de Bruijn en el intervalo.
Ejemplo
entrada | salida |
0 10 | 0 1 4 5 |
Concurso: | ICPC - 6 Concurso Interno de la Universidad Bonaterra. 26/Mayo/2006 |
Propuesto por: | Pier Paolo Guillén Hernández |
Ayuda: | entradas, salidas, sugerencias |
Soluciones: | bases.pas, bases.c, bases.cpp |