题目标签
Array
题意及思路
题意:将一个数组形式的“整数”与给出的k求和,最后返回的是数组形式,题例见上图。
思路:维护一个ArrayList<Integer>,从数组的最后一位开始计算(相当于数组的数字的个位)。每一次将其A[i]与cur相加(cur初始值为k),取模存入ans中,😄每次最后记得将cur进行cur /= 10。cur的这个操作,是为了进行匹配相加,😏换言之,假如个位数字上的数已然相加了,那么个位上的数对高位上的数就没有了进位影响。
代码
class Solution { public List<Integer> addToArrayForm(int[] A, int K) { int n = A.length; int cur = K; int i = n; List<Integer> ans = new ArrayList(); while(--i>=0 || cur>0){ if(i>=0){ cur += A[i]; } ans.add(cur%10); cur /= 10; } Collections.reverse(ans); return ans; } }