[Solved] Given an integer num, repeatedly add all its digits until the result has only one digit, and return it.

Leetcode solutions MLP Feature Image

Table of Contents

Question

Given an integer num, repeatedly add all its digits until the result has only one digit, and return it.

Example 1:

Input: num = 38
Output: 2
Explanation: The process is
38 --> 3 + 8 --> 11
11 --> 1 + 1 --> 2 
Since 2 has only one digit, return it.

Example 2:

Input: num = 0
Output: 0

Constraints:

  • 0 <= num <= 231 - 1

Follow up: Could you do it without any loop/recursion in O(1) runtime?

Python Solution

class Solution:
    def addDigits(self, n: int) -> int:
        if n==0:
            return 0
        if n%9==0:
            return 9
        else:
            return n%9

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top