幂和数
C++ GESP真题 二级 2025.6 #2
EXY-PG-0012
时间限制:1s 内存限制:512MB

题目描述

对于正整数 $n$,如果 $n$ 可以表示为两个 2 的次幂之和,即 $n = 2^x + 2^y$( $x,y$ 均为非负整数),那么称 $n$ 为幂和数。 给定正整数 $l,r$,请你求出满足 $l \leq n \leq r$ 的整数 $n$ 中有多少个幂和数。

输入格式

一行,两个正整数 $l,r$,含义如上。

输出格式

输出一行,一个整数,表示 $l,r$ 之间幂和数的数量。

样例说明

样例 1
输入:
2 8
输出:
6
样例 2
输入:
10 100
输出:
20

数据范围

对于所有测试点,保证 $1 \leq l \leq r \leq 10^4$。