AT_arc129_a [ARC129A] Smaller XOR
题目描述
给定整数 $N, L, R$。请计算满足以下两个条件的整数 $x$ 的个数。
- $L \leq x \leq R$
- $(x \oplus N) < N$(其中 $\oplus$ 表示按位异或运算)
按位异或运算的定义如下:对于整数 $A, B$,它们的按位异或 $A \oplus B$ 定义为:
- $A \oplus B$ 的二进制表示中,第 $2^k$ 位($k \geq 0$)的数,如果 $A, B$ 的二进制表示在该位上只有一个为 $1$,则结果为 $1$,否则为 $0$。
例如,$3 \oplus 5 = 6$(二进制表示为:$011 \oplus 101 = 110$)。
输入格式
输入从标准输入中给出,格式如下:
> $N$ $L$ $R$
输出格式
请输出答案。
说明/提示
### 限制条件
- $1 \leq N \leq 10^{18}$
- $1 \leq L \leq R \leq 10^{18}$
- 输入的所有值均为整数
### 样例解释 1
当 $x=1$ 时,$L \leq x \leq R$ 成立,但 $(x \oplus N) < N$ 不成立。当 $x=2$ 时,两个条件都成立。没有其他满足条件的 $x$。
由 ChatGPT 4.1 翻译