Cho một số nguyên dương lớn được biểu diễn dưới dạng một mảng các chữ số digits, trong đó mỗi digits[i] là một chữ số từ 0 đến 9. Chữ số có trọng số cao nhất (hàng lớn nhất) nằm ở đầu mảng.
Hãy cộng thêm 1 vào số nguyên đó và trả về mảng kết quả của các chữ số.
Ví dụ 1:
Input: digits = [1, 2, 3]
Output: [1, 2, 4]
Giải thích: 123 + 1 = 124.
Ví dụ 2:
Input: digits = [9, 9]
Output: [1, 0, 0]
Giải thích: 99 + 1 = 100.
Định Dạng Đầu Vào (Input)
Định Dạng Đầu Ra (Output)
Ràng Buộc (Constraints)
1 <= digits.length <= 1000 <= digits[i] <= 9
Ví Dụ Kiểm Thử Mẫu
[1, 2, 3]
[1, 2, 4]
[9, 9]
[1, 0, 0]
Kỹ thuật Xử Lý Nhớ Từ Phải Sang Trái O(n)
Duyệt từ cuối mảng về đầu. Nếu digits[i] < 9, tăng thêm 1 và trả về kết quả ngay lập tức. Nếu bằng 9, gán thành 0 và tiếp tục sang trái. Nếu hết mảng mà vẫn còn nhớ (ví dụ 999), thêm 1 vào đầu mảng.
Bấm Chạy thử để kiểm tra các bộ test mẫu hoặc Nộp bài để chấm điểm chính thức.



