题目描述
如果一个正整数的二进制表示中,每个比特(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,…,b 中幸运数字的数量。
输入格式
输入空格分隔的整数 a 和 b。
输出格式
输出一行一个整数,代表 a 和 b 之间幸运数字的数量。
1 100
14
4096 65535
1364
提示
对于 100% 的数据,满足 1≤a≤b≤106。
本题原始满分为 15pts。