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.
class Solution {
public:
int addDigits(int num) {
if(num < 10) return num;
int x = 0;
while(num > 9)
{
x += num%10;
num /= 10;
if(num < 10)
{
x += num;
if(x > 9)
{
num = x;
x = 0;
}
}
}
return x;
}
};

本文介绍了一种将非负整数的所有位数相加直至结果为单一位数的算法实现。通过不断累加数字的每一位并重复此过程直到只剩一位数为止。例如,对于输入38,经过3+8=11,再1+1=2的过程得到最终结果2。
436

被折叠的 条评论
为什么被折叠?



