Giả sử chúng ta có một mảng được gọi là nums, chứa các chữ số thập phân của một số. Ví dụ, [2, 5, 6] là 256. Chúng tôi phải thêm 1 với số này và trả về danh sách ở định dạng giống như trước.
Vì vậy, nếu đầu vào là nums =[2, 6, 9], thì đầu ra sẽ là [2, 7, 0].
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
-
i:=size of nums - 1
-
while i> =0, do
-
nếu nums [i] + 1 <=9 thì
-
nums [i]:=nums [i] + 1
-
đi ra từ vòng lặp
-
-
nếu không,
-
nums [i]:=0
-
i:=i - 1
-
-
-
nếu tôi <0, thì
-
chèn 1 vào nums ở vị trí 0
-
-
trả về số
Ví dụ
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn
def solve(nums): i = len(nums) - 1 while i >= 0: if nums[i] + 1 <= 9: nums[i] = nums[i] + 1 break else: nums[i] = 0 i -= 1 if i < 0: nums.insert(0, 1) return nums nums = [2, 6, 9] print(solve(nums))
Đầu vào
[2, 6, 9]
Đầu ra
[2, 7, 0]