Minimum One Bit Operations to Make Integers Zero
You receive an integer n, you must transform it into 0 using the following operations any count of times:
-
Change the rightmost (
0^th) bit in the binary representation ofn. -
Change the
i^thbit in the binary representation ofnif the(i-1)^thbit is set to1and the(i-2)^ththrough0^thbits are set to0.
Find and provide the fewest count of operations to transform n into 0.
Input: n = 3
Output: 2
Explanation: The binary representation of 3 is "11".
"11" -> "01" with the 2nd operation since the 0th bit is 1.
"01" -> "00" with the 1st operation.
Input: n = 6
Output: 4
Explanation: The binary representation of 6 is "110".
"110" -> "010" with the 2nd operation since the 1st bit is 1 and 0th through 0th bits are 0.
"010" -> "011" with the 1st operation.
"011" -> "001" with the 2nd operation since the 0th bit is 1.
"001" -> "000" with the 1st operation.
Constraints
0 <= n <= 10^9
Did this problem appear in one of your interviews?
Responses stay private.
