Plus One

来源:互联网 发布:java不允许重复登陆 编辑:程序博客网 时间:2024/05/01 21:03


今天是个比较简单的题,但还是不能"Accepted"

Problem: Given a number represented as an array of digits, plus one to the number

有两点,一个是array digits[0]应该存储的是数据的高位

另一点是如果array是999,加1会进位,需要新的array长度为digits.length+1

找不出来问题好忧伤

以下是我的代码

public class Solution {    public int[] plusOne(int[] digits) {        int c =0;        int l = digits.length-1;        int[] sum = new int[digits.length];        while(l>=0){            sum[l]=digits[l]+1+c;            if(sum[l]>9){                sum[l]=sum[l]%10;                c = 1;            }            else{                c = 0;            }         l--;        }      if(c==0){          return sum;      }      int[] summ = new int[digits.length+1];      summ[0] = 1;            for (int j = 0; j<=digits.length; j++){                summ[j+1] = sum[j];               }                  return summ;               }}

0 0
原创粉丝点击