码迷,mamicode.com
首页 > 其他好文 > 详细

A6:Add Digits

时间:2017-02-11 17:01:17      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:ati   return   span   ted   integer   code   logs   pre   int   

题目描述:

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

样例

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

 

解答:

 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 > 0){
 9             int[] tmp = getNum(num);
10             num = 0;
11             for(int i=0; i<tmp.length; i++){
12                 num = num + tmp[i];
13             }
14         }
15        return num;
16     }
17 
18     private int[] getNum(int num){
19         int length = Integer.toString(num).length();
20         int[] tmp = new int[length];
21         int i = 0;
22         while (num / 10 > 0){
23 
24             tmp[i] = num % 10;
25             num = num / 10 ;
26             i++;
27         }
28         tmp[length-1] = num;
29         return tmp;
30     }
31    
32 }

 

 

 

 

A6:Add Digits

标签:ati   return   span   ted   integer   code   logs   pre   int   

原文地址:http://www.cnblogs.com/tutotu/p/6389257.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!