Add Digits
Given a non-negative integer num, repeatedly add all its digits until the result has only one digit.
Example
Given num = 38.
The process is like: 3 + 8 = 11, 1 + 1 = 2. Since 2 has only one digit, return 2.
也可数学直接求解 https://en.wikipedia.org/wiki/Digital_root
1 public class Solution { 2 /** 3 * @param num a non-negative integer 4 * @return one digit 5 */ 6 public int addDigits(int num) { 7 // Write your code here 8 while(num>=10){ 9 int tempSum = 0; 10 int temp = num; 11 while(temp>=10){ 12 tempSum += temp%10; 13 temp/=10; 14 } 15 num = temp+tempSum; 16 } 17 return num; 18 } 19 }
浙公网安备 33010602011771号