# 258. Add Digits
#
# Given a non-negative integer num, repeatedly add all its digits until the result has only one digit.
#
# Example:
#
# Input: 38
# Output: 2
# Explanation: The process is like: 3 + 8 = 11, 1 + 1 = 2.
#              Since 2 has only one digit, return it.

class Solution:
    def addDigits(self, num: int) -> int:
        stack=[]
        stack.append(str(num))
        while(stack):
            input=stack.pop()
            if len(input)==1:
                return int(input)
            if len(input)>1:
                sum=0
                for i in input:
                    sum+=int(i)
                stack.append(str(sum))
