#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 计算两个数之和
# @param s string字符串 表示第一个整数
# @param t string字符串 表示第二个整数
# @return string字符串
#
class Solution:
def solve(self , s: str, t: str) -> str:
# write code here
if s =="": #特殊情况处理
return t
if t =="": #特殊情况处理
return s
if len(s)<len(t): #强制选定s为长度的大的进行遍历
s, t = t, s
t= t.zfill(len(s)) #给t左侧补0
carry = 0
res = []
for i in range(len(s)-1,-1,-1):
temp = int(s[i])+carry+int(t[i]) # 关键
carry = int(temp/10) # 关键,刷新进位
res.append(str(temp%10)) #关键,刷结果
if carry == 1: # 最后一次运算有就进位则进位1
res.append('1')
return "".join(res)[::-1] # 合并列表,逆序返回结果