Los frijoles negros mágicos
Luego de su increíble viaje por algún lugar del Caribe, Ricardo encontró un pomo lleno de frijoles negros mágicos. Ricardo notó que había frijoles, además que cada número entre
y
estaba escrito exactamente una vez en algún frijol del frasco.
Ricardo, con sus grandes conocimientos sobre biología, se percató que algunos pares de frijoles negros mágicos cumplían que al juntarse podían condensar el acetil-CoA y el oxalacetato. Luego de muchas investigaciones se dio cuenta que tenían que ver con los números escritos en los respectivos frijoles; más concretamente, un par de frijoles negros mágicos con números y
respectivamente cumple la propiedad si:
donde denota la operación XOR bit a bit de
y
, y
es el máximo común divisor entre
y
.
Tristemente, la investigación de Ricardo se vio detenida por una misteriosa enfermedad que azotaba su anónimo país... solo se pudo encontrar entre sus notas la pregunta:
¿Cuántos pares no ordenados* de frijoles negros mágicos cumplen dicha propiedad para los frijoles cuyo número está entre y
?
* El par se considera el mismo que
.
Entrada
La primera línea de entrada contiene un único entero (
), la cantidad de consultas.
Las siguientes q líneas estarán formadas por dos enteros y
(
).
Salida
Por cada una de las consultas, debe responder con un único número entero, la cantidad de pares no ordenados
y
que
y
.
Puntuación
| Subtarea | Condiciones | Puntos | Dependencias |
|---|---|---|---|
Ejemplos
Entrada de ejemplo 1
2
3 7
5 13
Salida de ejemplo 1
3
6
Explicacion de ejemplo 1
Para el primer caso de prueba, en el rango de los únicos pares que cumplen esto son:
,
,
.
Entrada de ejemplo 2
3
1 23
3 3
25 27
Salida de ejemplo 2
20
0
1
Entrada de ejemplo 3
4
11 83
44 63
39 40
65 65
Salida de ejemplo 3
89
25
0
0
Entrada de ejemplo 4
5
42 189
850 850
840 861
408 525
511 878
Salida de ejemplo 4
208
0
28
167
585
Nota
La operación XOR de dos números y
se define como sigue.
Definamos como la representación en base
de
,
como la representación en base
de
y
como la representación en base
del resultado. El valor de
se calcula de la siguiente forma:
Por ejemplo, sean los números y
. En base
son
y
respectivamente. Al realizar la operación XOR obtenemos como resultado
, lo cual es igual a
.
Comments