문제
"Round Number"란 다음 조건을 만족하는 자연수이다.
- 주어진 수를 이진수로 나타내었을 때 0의 개수가 1의 개수와 같거나 많다. -
예를 들어 9의 경우 이진수로 1001이다 0과 1의 수가 2개씩으로 같으므로 Round Number이다.
Start와 Finish 두 수가 주어졌을 때, 정수 Start부터 Finish까지의 수들 중에서 Round Number의 수를 세어 출력하라.
입력
Start, finish 두 수가 입력된다. (1≤start<finish<2,000,000,000).
출력
Start finish를 포함한 구간에서 round number의 수를 출력하라.
예제1
입력
2
12 출력
6
출처
USACO 2006 November Silver, poj 3252