#AT1084. 异或的世界

异或的世界

题目描述

定义 f(A,B)f(A, B)A,A+1,,BA,A+ 1,…, B的异或值。求 f(A,B)

▼什么是异或操作(Exclusive OR)? 对于整数 c1,c2,,cnc_1,c_2,…,c_n 的异或操作(我们称之为 yy),其定义如下

yy用二进制表示时,第 2k2^k位(k0k ≥ 0)上的数字是1 当且仅当在 c1,c2,..cmc_1,c_2,…..c_m 中,在第2k2^k位上有奇数个二进制表示含有 1 的数字;否则为 0。

例如,3 和5的异或结果为 6。(用二进制表示时:3和5的异或结果为 011 和 101,即110。)

输入

输入一行两个整数表示A,BA,B

输出

计算f(A,B)f(A,B)的值并输出

2 4
5

样例解释

2,3,4在二进制下的表示分别为 010,011,100。 这三个数的异或结果为 101,即十进制下的 5.

123 456
435
123456789012 123456789012
123456789012

提示

0AB1012 0 \leq A \leq B \leq 10^{12}