不含101的数
题目描述:
小明在学习二进制时,发现了一类不含101的数,也就是:
- 将数字用二进制表示,不能出现101。
现在给定一个正整数区间[l,r],请问这个区间内包含了多少个不含101的数?
输入描述:
输入的唯一一行包含两个正整数l,r(1<=l<r<=109)。
输出描述:
输出的唯一一行包含一个整数,表示在[l,r]区间内一共有几个不含101的数。
left = 1
right = 10
n = 0
for i in range(left, right + 1):
b = str(bin(i))
if "101" not in b:
n = n + 1
print(n)