思路:将K直接加到A[i]上,并将最低位留在A[i]上,并且将原本的k+A[i]除以10,作为下一刻K值加到i–后的A[i]上,以此类推直到结束
class Solution {
public List<Integer> addToArrayForm(int[] A, int K) {
int n = A.length;
int cur = K;
List<Integer> ans = new ArrayList();
int i = n - 1;
while(i >= 0 || cur > 0){
if(i >= 0)
cur = cur + A[i];
ans.add(cur % 10);
cur = cur / 10;
i--;
}
Collections.reverse(ans);//降序排序,因为一开始先加入的是低位,顺序要反过来
return ans;
}
}