989. Add to Array-Form of Integer LeetCode Solution
In this guide, you will get 989. Add to Array-Form of Integer LeetCode Solution with the best time and space complexity. The solution to Add to Array-Form of Integer problem is provided in various programming languages like C++, Java, and Python. This will be helpful for you if you are preparing for placements, hackathons, interviews, or practice purposes. The solutions provided here are very easy to follow and include detailed explanations.
Table of Contents
- Problem Statement
- Complexity Analysis
- Add to Array-Form of Integer solution in C++
- Add to Array-Form of Integer solution in Java
- Add to Array-Form of Integer solution in Python
- Additional Resources

Problem Statement of Add to Array-Form of Integer
The array-form of an integer num is an array representing its digits in left to right order.
For example, for num = 1321, the array form is [1,3,2,1].
Given num, the array-form of an integer, and an integer k, return the array-form of the integer num + k.
Example 1:
Input: num = [1,2,0,0], k = 34
Output: [1,2,3,4]
Explanation: 1200 + 34 = 1234
Example 2:
Input: num = [2,7,4], k = 181
Output: [4,5,5]
Explanation: 274 + 181 = 455
Example 3:
Input: num = [2,1,5], k = 806
Output: [1,0,2,1]
Explanation: 215 + 806 = 1021
Constraints:
1 <= num.length <= 104
0 <= num[i] <= 9
num does not contain any leading zeros except for the zero itself.
1 <= k <= 104
Complexity Analysis
- Time Complexity:
- Space Complexity:
989. Add to Array-Form of Integer LeetCode Solution in C++
class Solution {
public:
vector<int> addToArrayForm(vector<int>& num, int k) {
for (int i = num.size() - 1; i >= 0; --i) {
num[i] += k;
k = num[i] / 10;
num[i] %= 10;
}
while (k > 0) {
num.insert(num.begin(), k % 10);
k /= 10;
}
return num;
}
};
/* code provided by PROGIEZ */
989. Add to Array-Form of Integer LeetCode Solution in Java
class Solution {
public List<Integer> addToArrayForm(int[] num, int k) {
List<Integer> ans = new LinkedList<>();
for (int i = num.length - 1; i >= 0; --i) {
ans.add(0, (num[i] + k) % 10);
k = (num[i] + k) / 10;
}
while (k > 0) {
ans.add(0, k % 10);
k /= 10;
}
return ans;
}
}
// code provided by PROGIEZ
989. Add to Array-Form of Integer LeetCode Solution in Python
class Solution:
def addToArrayForm(self, num: list[int], k: int) -> list[int]:
for i in reversed(range(len(num))):
k, num[i] = divmod(num[i] + k, 10)
while k > 0:
num = [k % 10] + num
k //= 10
return num
# code by PROGIEZ
Additional Resources
- Explore all LeetCode problem solutions at Progiez here
- Explore all problems on LeetCode website here
Happy Coding! Keep following PROGIEZ for more updates and solutions.