定义两个正整数 x,y 是配对的,当且仅当 x⊕y>min(x,y) ,其中 ⊕ 代表按位异或。
我们使用符号 p(x,y) 代表 x,y 之间是否配对,换句话来说,如果 x,y 之间配对,那么 p(x,y)=1,否则 p(x,y)=0。
给定 l,r,求 ∑x=lr∑y=xrp(x,y)。
按位异或运算是一种二进制运算方法,用符号 ⊕ 表示。对两个二进制数进行按位异或运算,规则是如果相应位上的两个数字相同则结果为 0 ,如果相应位上的两个数字不同则结果为 1。 例如,假设有两个二进制数 A=1100 和 B=1010,进行按位异或运算的结果如下:
A = 1100
B = 1010
————按位异或运算
R = 0110
也就是说,A 和 B 的第一位都是 1,所以结果的第一位为 0;A 的第二位为 1,B 的第二位为 0,所以结果的第二位为 1;以此类推,可以得到最后的结果 R=0110。
Thank you, ChatGPT, for introducing us to bitwise XOR operation.
第一行,一个整数 t(1≤t≤105),代表询问组数。
接下来连续的 t 行,每行两个整数 l,r(1≤l≤r≤109),含义如题目描述所示。
对于每组输出,输出一行整数代表 ∑x=lr∑y=xrp(x,y) 的值。
输入样例
3
1 3
2 7
11 62
输出样例
2
8
731