Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Cộng 1 vào số biểu diễn bằng danh sách trong Python

Cho danh sách n các chữ số (0-9) biểu diễn số thập phân (ví dụ [2,4,9] = 249). Trả về danh sách mới sau khi cộng 1.

Ví dụ: [9,9] → [1,0,0].

Các bước giải quyết

  • Thêm 0 vào đầu danh sách: n = [0] + n
  • Tăng phần tử cuối lên 1
  • Duyệt ngược từ cuối về đầu:
    • n[i-1] += n[i] // 10
    • n[i] %= 10
  • Trả về n nếu n[0] > 0 ngược lại n[1:]

Ví dụ mã Python

class Solution:
    def solve(self, n):
        n = [0] + n
        n[-1] += 1
        for i in range(len(n) - 1, 0, -1):
            n[i-1] += n[i] // 10
            n[i] = n[i] % 10
        return n if n[0] > 0 else n[1:]

ob = Solution()
print(ob.solve([9,9]))

Đầu vào

[9,9]

Đầu ra

[1, 0, 0]