0258. Add Digits

0258. Add Digits #

题目 #

  • 给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。返回这个结果。

思路 #

模拟 #

数字根 #

代码 #

模拟 #

class Solution {
    public int foo(int num) {
        int ans = 0;
        while (num > 0) {
            ans += num % 10;
            num /= 10;
        }
        return ans;
    }
    public int addDigits(int num) {
        while (num > 9) {
            num = foo(num);
        }
        return num;
    }
}

致谢 #

windliang