import sys # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # 计算两个数之和 # @param s string字符串 表示第一个整数 # @param t string字符串 表示第二个整数 # @return string字符串 # class Solution: def solve(self , s: str, t: str) -> str: # write code here s_list=list(s) s_list=s_list[::-1] t_list=list(t) t_list=t_list[::-1] s_index=0 t_index=0 print(len(s_list)) s_len=len(s_list) t_len=len(t_list) print(s_len,t_len) ans=[] p=0 print(s_list,t_list) while s_index<s_len or t_index<t_len: if s_index<s_len and t_index<t_len: s_int=int(s_list[s_index]) t_int=int(t_list[t_index]) ans.append(int((s_int+t_int+p)%10)) # 注意这里加上p 进位 p=int((p+s_int+t_int)/10) # 注意这里加上p 进位 s_index+=1 t_index+=1 elif s_index<s_len and t_index>=t_len: while s_index<s_len: s_int=int(s_list[s_index]) ans.append(int((s_int+p)%10) ) # 注意这里加上p 进位 p=int((s_int+p)/10) # 注意这里加上p 进位 s_index+=1 break elif t_index>=s_len and t_index<t_len: while t_index<t_len: t_int=int(t_list[t_index]) ans.append(int((t_int+p)%10)) # 注意这里加上p 进位 p=int((t_int+p)/10) # 注意这里加上p 进位 t_index+=1 break #print("end",ans) if int(p)!=0: ans.append(p) ans=ans[::-1] #print("ans",ans) return "".join(str(x) for x in ans)