Bleak Numbers
Medium Accuracy: 51.66% Submissions: 2200 Points: 4

Given an integer, check whether it is Bleak or not.

A number ‘n’ is called Bleak if it cannot be represented as sum of a positive number x and set bit count in x, i.e., x + countSetBits(x) is not equal to n for any non-negative number x.

Example 1:

Input: 4
Output: 1
Explanation: There is no any possible x
such that x + countSetbit(x) = 4

Example 2:

Input: 3
Output: 0
Explanation: 3 is not a Bleak number as 
2 + countSetBit(2) = 3.


Your Task:
You don't need to read or print anything. Your task is to complete the function is_bleak() which takes n as input parameter and returns 1 if n is not a Bleak number otherwise returns 0.


Expected Time Complexity: O(log(n) * log(n))
Expected Space Complexity: O(1)


1 <= n <= 104

We are replacing the old Disqus forum with the new Discussions section given below.
Click here to view old Disqus comments.

to report an issue on this page.


We strongly recommend solving this problem on your own before viewing its editorial. Do you still want to view the editorial?


All Submissions

My Submissions:

Login to access your submissions.

Bleak Numbers

Output Window