carry가 없으면 간단하지만, carry가 생기는 경우를 생각해야 함

9로만 되어 있는 경우에는 자릿수가 하나 늘어나도 첫 번째 digit만 1이고 나머지는 0일 것임

{9,9,9,9} => {1,0,0,0,0}

class Solution {
    public int[] plusOne(int[] digits) {        
		int n = digits.length;				
		for (int i = n-1; i >= 0; i--) {
			if(digits[i] == 9) {
				digits[i] = 0;
				
				if(i == 0) {
					digits = new int[digits.length + 1];
					digits[0] = 1;
					return digits;
				}
			} else {
				digits[i]+=1;
				return digits;
			}
		}		
		return digits;
    }
}

 

class Solution {
    public int[] plusOne(int[] digits) {
        int dex = digits.length - 1;
        for(int i = dex; i>=0;i--){
            digits[i]++;
            digits[i] = digits[i] % 10;
            if(digits[i] != 0){
                return digits;
            }
        }
        digits = new int[digits.length + 1];
        digits[0] = 1;
        return digits;
    }
}