415. 字符串相加
给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。
注意:
num1 和num2 的长度都小于5100.
num1 和num2 都只包含数字 0-9.
num1 和num2 都不包含任何前导零。
你不能使用任何內建 BigInteger 库, 也不能直接将输入的字符串转换为整数形式。
class Solution:
def addStrings(self, num1, num2):
"""
:type num1: str
:type num2: str
:rtype: str
"""
res = 0
if len(num1) < len(num2):
short_num = num1[::-1]
long_num = num2[::-1]
else:
short_num = num2[::-1]
long_num = num1[::-1]
for i in range(len(short_num)): // 逐位相加
curr = int(short_num[i]) + int(long_num[i])
res += curr * (10 ** i)
for j in range(i+1, len(long_num)): // 将较长的补加上
curr = int(long_num[j])
res += curr * (10 ** j)
return str(res)

浙公网安备 33010602011771号