101385: [AtCoder]ABC138 F - Coincidence
Memory Limit:256 MB
Time Limit:2 S
Judge Style:Text Compare
Creator:
Submit:0
Solved:0
Description
Score : $600$ points
Problem Statement
Given are integers $L$ and $R$. Find the number, modulo $10^9 + 7$, of pairs of integers $(x, y)$ $(L \leq x \leq y \leq R)$ such that the remainder when $y$ is divided by $x$ is equal to $y \text{ XOR } x$.
What is $\text{ XOR }$?
The XOR of integers $A$ and $B$, $A \text{ XOR } B$, is defined as follows:
- When $A \text{ XOR } B$ is written in base two, the digit in the $2^k$'s place ($k \geq 0$) is $1$ if either $A$ or $B$, but not both, has $1$ in the $2^k$'s place, and $0$ otherwise.
Constraints
- $1 \leq L \leq R \leq 10^{18}$
Input
Input is given from Standard Input in the following format:
$L$ $R$
Output
Print the number of pairs of integers $(x, y)$ $(L \leq x \leq y \leq R)$ satisfying the condition, modulo $10^9 + 7$.
Sample Input 1
2 3
Sample Output 1
3
Three pairs satisfy the condition: $(2, 2)$, $(2, 3)$, and $(3, 3)$.
Sample Input 2
10 100
Sample Output 2
604
Sample Input 3
1 1000000000000000000
Sample Output 3
68038601
Be sure to compute the number modulo $10^9 + 7$.