0415. Add Strings
Easy | String + Math | 28 ms (97.36%), 14.2 MB (83.13%)
Input: num1 = "11", num2 = "123"
Output: "134"
Input: num1 = "456", num2 = "77"
Output: "533"
Input: num1 = "0", num2 = "0"
Output: "0"class Solution:
def addStrings(self, num1: str, num2: str) -> str:
# ==================================================
# String + Math =
# ==================================================
# time : O(max(m,n))
# space : O(1)
ans, carry = '', 0
p1, p2 = len(num1) - 1, len(num2) - 1
while(p1 >= 0 or p2 >= 0 or carry > 0):
val1 = ord(num1[p1]) - ord('0') if p1 >= 0 else 0
val2 = ord(num2[p2]) - ord('0') if p2 >= 0 else 0
val = val1 + val2 + carry
carry = val // 10
val = val % 10
ans = str(val) + ans
p1 -= 1
p2 -= 1
return ansLast updated