Bits


Submit solution

Points: 100 (partial)
Time limit: 1.0s
Memory limit: 64M

Author:
Problem type
Allowed languages
C, C++, Java, Pascal

Denotemos como popcount (x) el número de bits establecidos (bits '1') en la representación binaria del entero no negativo x.

Se le dan múltiples consultas que consisten en pares de números enteros l y r. Para cada consulta, encuentre la x, tal que l \leq x \leq r, y popcount (x) sea el máximo posible. Si hay varios de esos números, encuentre el más pequeño de ellos.

Entrada

La primera línea contiene el número entero n: el número de consultas (1 \leq n \leq 10 000).

Cada una de las siguientes n líneas contiene dos enteros l_i, r_i - los argumentos para la consulta correspondiente (0 \leq l_i \leq r_i \leq 10^18).

Salida

Para cada consulta, imprima la respuesta en una línea separada.

Ejemplo de Entrada

3
1 2
2 4
1 10

Ejemplo de Salida

1
3
7

Explicación

Las representaciones binarias de los números del 1 al 10 se enumeran a continuación:

• 1 = 1 (2)

• 2 = 10 (2)

• 3 = 11 (2)

• 4 = 100 (2)

• 5 = 101 (2)

• 6 = 110 (2)

• 7 = 111 (2)

• 8 = 1000 (2)

• 9 = 1001 (2)

• 10 = 1010 (2)


Comments

There are no comments at the moment.