문제로

내가 푼 것1(틀림_)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
class Solution {
    public int[] plusOne(int[] digits) {
        StringBuffer s = new StringBuffer();
        for(int n : digits){
            s.append(n);
        }
        long nums = Long.parseLong(s.toString()) + 1l;

        int length = String.valueOf(nums).length();
        
        int[] result = new int[length];

        for(int i = length-1; i >= 0; i--){
            result[i] = (int) nums % 10;
            nums = nums/10;
        }

        return result;
    }
}

내가 푼 것2

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
class Solution {
    public int[] plusOne(int[] digits) {
        for(int i = digits.length-1; i >= 0  ; i--) {
            if(digits[i] + 1 <= 9){
                digits[i] += 1;
                return digits;
            } else {
                digits[i] = 0;
            }
        }
        int[] result = new int[digits.length + 1];
        result[0] = 1;
        return result;
    }
}