Shreyansh and his bits
Submissions: 878   Accuracy:

19.27%

  Difficulty: Medium   Marks: 4

Shreyansh has an integer N. He is really curious about the binary representation of integers. He sees that any given integer has a number of set bits. Now he wants to find out that how many positive integers, strictly less than N, have the same number of set bits as N.
He is a little weak in maths. Help him find the number of integers.
Note : Since N takes large values, brute force won't work.

Input : 
First line of input contains a single integer T denoting the number of test cases.
The only line of each test case contains an integer N.

Output : 
For each test case, print the required answer in a new line.

Constraints : 
1 <= T <= 1000
1 <= N <= 10^12

Example : 
Input :
 
3
8
1
4

Output : 
3
0
2

Explanation : 
Case 1 : 
Binary representation of 8 : 1000
So the integers less than 8 with same number of set bits are : 4, 2, 1

Case 2 : 
Binary representation of 1 : 1
There are no positive integers less than 1.

Case 3 : 
Binary representation of 8 : 100
So the integers less than 4 with same number of set bits are : 2, 1

 

** For More Input/Output Examples Use 'Expected Output' option **

Author: goyalanubhav11


If you have purchased any course from GeeksforGeeks then please ask your doubt on course discussion forum. You will get quick replies from GFG Moderators there.



Need help with your code? Please use ide.geeksforgeeks.org, generate link and share the link here.


to report an issue on this page.