首页 > 其他 > 详细

Leetcode Variant-Plus N

时间:2014-11-29 07:03:28      阅读:267      评论:0      收藏:0      [点我收藏+]

Given a non-negative number represented as an array of digits, plus N to the number.

The digits are stored such that the most significant digit is at the head of the list.

N is guaranteed to be non-negative.

Solution:

 1 public class Solution {
 2     public int[] plusN(int[] digits, int n) {
 3         int carry = n;
 4         int index = digits.length-1;
 5         while (carry>0 && index>=0){
 6             int val = digits[index]+carry;
 7             carry = val/10;
 8             val = val%10;
 9             digits[index]=val;
10             index--;
11         }
12         int[] res;
13         if (index<0 && carry>0){
14             String cStr = Integer.toString(carry);
15             res = new int[cStr.length()+digits.length];
16             for (int i=0;i<cStr.length();i++)
17                 res[i]=cStr.charAt(i)-‘0‘;
18             for (int i=0;i<digits.length;i++)
19                 res[i+cStr.length()]=digits[i];           
20         } else res = digits;
21         return res;
22     }
23 }

 

Leetcode Variant-Plus N

原文:http://www.cnblogs.com/lishiblog/p/4129895.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!