Skip to content

Files

Latest commit

3369624 · Aug 17, 2020

History

History

LC-1342

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Aug 17, 2020
Aug 17, 2020
Aug 17, 2020

LC-1342 - Number of Steps to Reduce a Number to Zero

Given a non-negative integer num, return the number of steps to reduce it to zero. If the current number is even, you have to divide it by 2, otherwise, you have to subtract 1 from it.

  • Difficulty: EASY

Examples

Input: num = 14
Output: 6
Explanation: 
Step 1) 14 is even; divide by 2 and obtain 7. 
Step 2) 7 is odd; subtract 1 and obtain 6.
Step 3) 6 is even; divide by 2 and obtain 3. 
Step 4) 3 is odd; subtract 1 and obtain 2. 
Step 5) 2 is even; divide by 2 and obtain 1. 
Step 6) 1 is odd; subtract 1 and obtain 0.
Input: num = 8
Output: 4
Explanation: 
Step 1) 8 is even; divide by 2 and obtain 4. 
Step 2) 4 is even; divide by 2 and obtain 2. 
Step 3) 2 is even; divide by 2 and obtain 1. 
Step 4) 1 is odd; subtract 1 and obtain 0.
Input: num = 123
Output: 12

Notes

  • 0 <= num <= 10^6

Solutions

  1. Naive Approach
    • Time complexity: O ( n )
    • Space complexity: O ( 1 )