赞
踩
思路:将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; } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。