8595 - 幂和数

对于正整数n,如果n可以表示为两个2的次幂之和,即存在两个非负整数x和y,使得n=2x+2y,那么称n为幂和数。
例如:
2是幂和数,因为2=20+20
3是幂和数,因为3=20+21
4是幂和数,因为4=21+21
注意:数字1不是幂和数,因为它不能表示为两个2的次幂之和(2=20+20,而不是1)
给定两个正整数L和R,请你求出区间[L,R]内(包含L和R)有多少个幂和数。

输入

一行,包含两个正整数L和R,表示区间的左右端点。

输出

一行,一个整数,表示区间[L,R]内幂和数的个数。

样例

输入

2 8

输出

6

输入

5 20

输出

9

提示

样例1解释:区间 [2,8] 内的幂和数有:2, 3, 4, 5, 6, 8,共8个。

时间限制 1 秒
内存限制 128 MB
讨论 统计
上一题 下一题