989. Add to Array-Form of Integer

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class Solution {
public List<Integer> addToArrayForm(int[] num, int k) {
List<Integer> numList = new ArrayList<>();

int carry = 0;
int i = num.length - 1;
while (i >= 0 || k != 0 || carry != 0) {
int x = i >= 0 ? num[i--] : 0;
int y = k % 10;
k /= 10;
int sum = carry + x + y;
numList.add(sum % 10);
carry = sum / 10;
}

Collections.reverse(numList);
return numList;
}
}

References

989. Add to Array-Form of Integer