# 66. Plus One import sys from typing import List class Solution: def plusOne(self, digits: List[int]) -> List[int]: size: int = len(digits) i: int = size - 1 while i >= 0: print(i) digits[i] += 1 if digits[i] < 10: break digits[i] = 0 if i == 0: digits.insert(0, 1) i -= 1 pass return digits pass def main() -> int: def r(digits: List[int], exp: List[int]) -> None: ret: List[int] = Solution().plusOne(digits.copy()) print(f"Solution().plusOne({digits}) = {ret} | exp: {exp}") pass r([1, 2, 3], [1, 2, 4]) r([4, 3, 2, 1], [4, 3, 2, 2]) r([9], [1, 0]) r([4, 3, 2, 9], [4, 3, 3, 0]) return 0 if __name__ == "__main__": sys.exit(main())