跳到主要内容

989.数组形式的整数加法

链接:989.数组形式的整数加法
难度:Easy
标签:数组、数学
简介:对于非负整数  X  而言,X  的数组形式是每位数字按从左到右的顺序形成的数组。例如,如果  X = 1231,那么其数组形式为  [1,2,3,1]。给定非负整数 X 的数组形式  A,返回整数  X+K  的数组形式。

题解 1 - typescript

  • 编辑时间:2021-01-22
  • 执行用时:140ms
  • 内存消耗:43.2MB
  • 编程语言:typescript
  • 解法介绍:倒序相加。
function addToArrayForm(A: number[], K: number): number[] {
let add: 1 | 0 = 0;
const kArr: number[] = [];
while (K !== 0) {
kArr.push(K % 10);
K = ~~(K / 10);
}
A = A.reverse();
for (let i = 0, len = Math.max(A.length, kArr.length); i < len; i++) {
let num = (A[i] ?? 0) + (kArr[i] ?? 0) + add;
if (num >= 10) {
num -= 10;
add = 1;
} else {
add = 0;
}
A[i] = num;
}
add === 1 && A.push(1);
return A.reverse();
}