✏️ 纠错
第 127 题 / 共 155 题
题目描述
对于正整数 n,如果 n 可以表为两个 2 的次幂之和,即 n=2x+2y(x,y 均为非负整数),那么称 n 为幂和数。
给定正整数 l,r,请你求出满足 l≤n≤r 的整数 n 中有多少个幂和数。
输入格式
一行,两个正整数 l,r,含义如上。
输出格式
输出一行,一个整数,表示 l,r 之间幂和数的数量。
输入输出样例
输入 #1
2 8
输出 #1
6
输入 #2
10 100
输出 #2
20
说明/提示
对于所有测试点,保证 1≤l≤r≤104。
你真棒!
📝 题目解析
【代码解析】
题目要求找出l 到r 之间可以表示为2x+2y 形式的数。代码使用两层while 循环生成所有2x 和2y 的组合(a 和b 分别代表2x 和2y)。通过a*=2 和b*=2 来生成下一个2的幂。检查a+b 是否在[l, r] 范围内,如果在则计数
【参考程序】

题目要求找出l 到r 之间可以表示为2x+2y 形式的数。代码使用两层while 循环生成所有2x 和2y 的组合(a 和b 分别代表2x 和2y)。通过a*=2 和b*=2 来生成下一个2的幂。检查a+b 是否在[l, r] 范围内,如果在则计数
【参考程序】
