1. 题目
2. 解题思路
套模板(模拟加法的题面试手撕和刷题都经常遇到)
3. 代码
let num = [1,2,0,0], k = 34
function addToArrayForm(num, k) {
const n = num.length
let add = 0, sum = 0, i = n - 1
let res = []
while (i >= 0 || k != 0) {
// a 和 b 的当前位
let a = i >= 0 ? num[i] : 0
let b = k !== 0 ? k % 10 : 0
// console.log(a, b);
sum = a + b + add
// 进位
add = parseInt(sum / 10)
k = parseInt(k / 10)
i--
// 当前位
res.unshift(sum % 10)
}
console.log(add);
if (add !== 0) res.unshift(1)
return res
}
console.log(addToArrayForm(num, k));