## Description

https://leetcode.com/problems/add-digits/

Given an integer `num`

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

**Example 1:**

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

**Example 2:**

Input:num = 0Output:0

**Constraints:**

`0 <= num <= 2`

^{31}- 1

## Explanation

Loop until the sum of digits becomes only one digit.

## Python Solution

```
class Solution:
def addDigits(self, num: int) -> int:
while len(str(num)) > 1:
result = 0
for c in str(num):
result += int(c)
num = result
return num
```

- Time Complexity: O(N).
- Space Complexity: O(1).