class Solution {
public:
int addDigits(int num) {
do{
int n=num,i;
for(i=0;n!=0;i++)
n/=10;
int a[i];
int m=num;
for(int j=0;j<i;j++){
a[j]=m%10;
m/=10;
}
num=0;
for(int j=0;j<i;j++)
num+=a[j];
}while(num>10);
return num;
}
public:
int addDigits(int num) {
do{
int n=num,i;
for(i=0;n!=0;i++)
n/=10;
int a[i];
int m=num;
for(int j=0;j<i;j++){
a[j]=m%10;
m/=10;
}
num=0;
for(int j=0;j<i;j++)
num+=a[j];
}while(num>10);
return num;
}
};
- public int addDigits(int num) {
- while(num>=10){
- num = (num/10)+num%10;
- }
- return num;
- }
本文介绍了一种通过不断将数字拆分为各位数字之和直至得到一位数的方法。使用两种不同的实现方式来完成这一任务:一种是通过数组存储每位数字再求和;另一种则是直接通过数学运算实现。
198

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



