Logo HelloWorld信息学奥赛题库

少儿编程

时间限制:1 s 空间限制:512 MB

#13107. 幸运数字【2024江苏省信息与未来P1】

统计

题目描述

如果一个正整数的二进制表示中,每个比特($0$ 或 $1$)的左边或右边都有一个相同的比特,Dr. X 就认为它是一个“幸运数字”。例如:

  • $(1)_2=(1)_{10}$ 有落单的 $1$,它不是幸运数字。

  • $(110111)_2=(55)_{10}$ 有落单的 $0$,它不是幸运数字。

  • $(111110011)_2=(499)_{10}$ 是幸运数字。

  • $(110011001100)_2=(3276)_{10}$ 是幸运数字。

对于给定的 $a$ 和 $b$,Dr. X 希望你求出 $a, a + 1, a + 2, \dots, b$ 中幸运数字的数量。

输入格式

输入空格分隔的整数 $a$ 和 $b$。

输出格式

输出一行一个整数,代表 $a$ 和 $b$ 之间幸运数字的数量。

样例 #1

样例输入 #1

1 100

样例输出 #1

14

样例 #2

样例输入 #2

4096 65535

样例输出 #2

1364

提示

对于 $100\%$ 的数据,满足 $1 \leq a \leq b \leq 10^6$。

本题原始满分为 $15\text{pts}$。