對于非負整數 X 而言,X 的數組形式是每位數字按從左到右的順序形成的數組。例如,如果 X = 1231,那么其數組形式為 [1,2,3,1]。
給定非負整數 X 的數組形式 A,返回整數 X+K 的數組形式。
示例 1:
輸入:A = [1,2,0,0], K = 34
輸出:[1,2,3,4]
解釋:1200 + 34 = 1234
代碼
class Solution {public List<Integer> addToArrayForm(int[] A, int K) {List<Integer> list=new ArrayList<>();while (K>=10)//拆出k的每一位{list.add(K%10);K/=10;}int car=0;int idx=0;list.add(K);List<Integer> res=new ArrayList<>();for(int i=A.length-1;i>=0||idx<list.size();i--,idx++){//將A和K逐個位相加int temp=(i>=0?A[i]:0)+(idx<list.size()?list.get(idx):0)+car;car=(temp/10);res.add(temp%10);}if(car==1)res.add(1);Collections.reverse(res);return res;}
}