问题 5407 --区间圆数

5407: 区间圆数

题目描述

如果一个正整数的二进制表示中,$0$ 的数目不小于 $1$ 的数目,那么它就被称为“圆数”。 例如,$9$ 的二进制表示为 $1001$,其中有 $2$ 个 $0$ 与 $2$ 个 $1$。因此,$9$ 是一个“圆数”。 请你计算,区间 $[l,r]$ 中有多少个“圆数”。

输入

输入仅有一行,两个整数 $l,r$。

输出

输出一个非负数,表示 $[l,r]$ 的圆数个数。

样例输入输出

输入#1 复制
2 12
输出#1 复制
6

提示

对于 $100\%$ 的数据,满足 $1 \leq l,r \leq 2\times 10^9$。
序号 标题 作者 发表时间 费用 订购数 操作