A8942. Little Girl and Maximum XOR
编程题
普及/提高-
知识点
题目描述
A little girl loves problems on bitwise operations very much. Here's one of them.
You are given two integers $l$ and $r$ . Let's consider the values of  for all pairs of integers $a$ and $b$ $(l<=a<=b<=r)$ . Your task is to find the maximum value among all considered ones.
Expression  means applying bitwise excluding or operation to integers $x$ and $y$ . The given operation exists in all modern programming languages, for example, in languages $C$ ++ and $Java$ it is represented as "^", in $Pascal$ — as «xor».
You are given two integers $l$ and $r$ . Let's consider the values of  for all pairs of integers $a$ and $b$ $(l<=a<=b<=r)$ . Your task is to find the maximum value among all considered ones.
Expression  means applying bitwise excluding or operation to integers $x$ and $y$ . The given operation exists in all modern programming languages, for example, in languages $C$ ++ and $Java$ it is represented as "^", in $Pascal$ — as «xor».
输入格式
The single line contains space-separated integers $l$ and $r$ ( $1<=l<=r<=10^{18}$ ).
Please, do not use the %lld specifier to read or write 64-bit integers in С++. It is preferred to use the cin, cout streams or the %I64d specifier.
Please, do not use the %lld specifier to read or write 64-bit integers in С++. It is preferred to use the cin, cout streams or the %I64d specifier.
输出格式
In a single line print a single integer — the maximum value of  for all pairs of integers $a$ , $b$ $(l<=a<=b<=r)$ .
输入输出样例
输入 #1
1 2
输出 #1
3
输入 #2
8 16
输出 #2
31
输入 #3
1 1
输出 #3
0