圆整数
测试数据来自 wjszez/2224
题目描述
自然数N可以用二进制的形式表示。如果N的二进制表示形式的0的个数等于或多于1的个数,则称正整数N为“round number”。例如,当以二进制形式表示时,十进制整数9是1001。1001有两个零和两个一,9是一个“round number”。整数26在二进制中是11010,因为它有两个0和三个1,所以它不是一个“round number”。
你知道奶牛没有手指或拇指,因此不能玩剪刀、布、石头来做出决定,比如谁先挤奶。他们甚至连硬币都不会扔,因为用蹄子掷硬币太难了。
因此他们诉诸于“round number”匹配比赛。第一头牛选择一个小于20亿的十进制整数。第二头牛也是这样。如果两个数字都是“round number”,第一头牛获胜,否则第二头牛赢。
奶牛需要一段时间才能把数字转换成二进制,所以需要一段时间过后才能确定胜利者。贝西想作弊,她认为如果她知道给定范围内有多少个“round number”,她就能赢。现请你帮她编写一个程序,告诉她在给定范围内出现了多少个“round number”(1≤Start<Finish≤109)。
输入格式
1行:两个空格分隔的整数,分别是Start和Finish。
输出格式
1行:一个整数,它是包含在Start,Finish区间中的“round number”个数。
输入输出样例
样例1
输入样例
2 4
输出样例
2
信息
- ID
- 2260
- 难度
- (无)
- 分类
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 通过率
- ?
- 上传者