# 1342. Number of Steps to Reduce a Number to Zero
###### tags: `Leetcode` `Medium` `Bit Manipulation`
Link: https://leetcode.com/problems/number-of-steps-to-reduce-a-number-to-zero/
## 思路
算出num的二进制表达式,遇到一个1,答案就加2,遇到0,答案加1
最后的答案要-1,因为当num变成1的时候,只需要subtract 1即可,不再需要/2
## Code
```java=
class Solution {
public int numberOfSteps(int num) {
if(num==0) return 0;
int ans = 0;
while(num!=0){
ans += (num&1)==1?2:1;
num >>= 1;
}
return ans-1;
}
}
```