**Problem:**given two numbers

**a**and

**b**find how many numbers with a bit

**x**set are there in the interval

**[a,b]**.

**Example:**

*Input:*5 8 2

*Output:*3

*Explanation:*

5 = 0

**1**01

6 = 0

**1**10

7 = 0

**1**11

8 = 1000

The second bit (starting from the least significant bit with index 0) is set only in numbers 5, 6 and 7, so there are 3 numbers in the interval [5, 8] with the second bit set.

**Solution:**