您的位置:首页 > 其它

渣渣写LEETCODE——258. Add Digits

2016-05-06 21:03 288 查看
Problem:

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?

Solution:

用模10取出个位,用除10丢掉个位。

O(1)的解法想出来再补充。

Code:

/*__xz__*/
class Solution {
public:
int addDigits(int num) {
int result = 0;
if (num < 10) return num;
else {
while (num != 0) {
result += num%10;
num /= 10;
}
}

return result;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: