|
@@ -0,0 +1,43 @@
|
|
|
|
|
+# 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())
|