題目概述:
對於非負整數 x 而言,x 的陣列形式是每位數字按從左到右的順序形成的陣列。例如,如果 x = 1231,那麼其陣列形式為 [1,2,3,1]。
給定非負整數 x 的陣列形式 a,返回整數 x+k 的陣列形式。
最容易想到的一種思路是把k轉化為陣列,然後兩陣列逐位相加。其實仔細想一下不必將k轉化為陣列,對k邊處理邊計算每一位的和即可。**如下。
public class problem989
ans.add(sum);
}while (k!=0)
collections.reverse(ans); // 反轉列表
return ans;
}}
另一種方法是直接將k與陣列a每位上的數字相加,每次將k加在陣列a表示的數的最低位上。**如下。
public class problem989
collections.reverse(res);
return res;
}}
另外力扣上關於兩數加法的模板
當前位 = (a 的當前位 + b 的當前位 + 進製carry) % 10
while ( a 沒完 || b 沒完))
a 的當前位
b 的當前位
和 = a 的當前位 + b 的當前位 + 進製carry
當前位 = 和 % 10;
進製 = 和 / 10;
判斷是否還有進製
LeetCode 989 陣列形式的整數加法
對於非負整數 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 ...
leetcode989 陣列形式的整數加法
看到這道題剛開始我的解題思路是將整數k分解,並依次放入乙個新建好的陣列中,然後同給的陣列按位相加,標記進製。但是怎麼把整數k分解成乙個陣列難倒了我。等以後有時間我會把我的這種方法寫出來 今晚實在不想動腦筋。官方解題思路 leetcode官方題解 這個官方解題思路真的是贊啊,一看到兩數相加當然想到按位...
leetcode 989 陣列形式的整數加法
989.陣列形式的整數加法 難度簡單61 對於非負整數x而言,x的陣列形式是每位數字按從左到右的順序形成的陣列。例如,如果x 1231,那麼其陣列形式為 1,2,3,1 給定非負整數x的陣列形式a,返回整數x k的陣列形式。示例 1 輸入 a 1,2,0,0 k 34輸出 1,2,3,4 解釋 12...