美文网首页
258. Add Digits

258. Add Digits

作者: YellowLayne | 来源:发表于2017-10-30 14:45 被阅读0次

    1.描述

    Given a non-negative integer num, repeatedly add all its digits until the result has only one digit.

    For example:

    Given num = 38, the process is like: 3 + 8 = 11, 1 + 1 = 2. Since 2 has only one digit, return it.

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

    2.分析

    3.代码

    class Solution {
    public:
        int addDigits(int num) {
            if (num / 10 == 0) return num;
            int newnum = 0;
            while (num / 10) {
                newnum += num % 10;
                num /= 10;
            }
            newnum += num;
            return addDigits(newnum);
        }
    };
    

    相关文章

      网友评论

          本文标题:258. Add Digits

          本文链接:https://www.haomeiwen.com/subject/ziwppxtx.html