Add Digits

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

Условие

Дано неотрицательное целое число num, повторяйте процесс сложения цифр, пока не останется одна цифра.

Примеры

Input: num = 38

Output: 2

Explanation: 3 + 8 = 11, затем 1 + 1 = 2.
Input: num = 0

Output: 0

Решение

fun addDigits(num: Int): Int {
    // Используем математическую формулу для получения результата
    return if (num == 0) 0 else 1 + (num - 1) % 9
}

Временная сложность

O(1), так как мы используем фиксированное количество операций.

Пространственная сложность

O(1), так как мы не используем дополнительную память, кроме переменной для результата.