如果一个正整数的二进制表示中,每个比特(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 100
14
4096 65535
1364
对于 100\% 的数据,满足 1 \leq a \leq b \leq 10^6。
>本题原始满分为 15\text{pts}。
2024年江苏省"信息与未来"小学生编程