题解 | #高精度整数加法#
高精度整数加法
https://www.nowcoder.com/practice/49e772ab08994a96980f9618892e55b6?tpId=37&tags=&title=&difficulty=3&judgeStatus=3&rp=1&sourceUrl=%2Fexam%2Foj%2Fta%3FtpId%3D37&gioEnter=menu&dayCountBigMember=365%E5%A4%A9
import sys
s1 = input()
s2 = input()
max1 = max(len(s1),len(s2))
s1 = (s1.zfill(max1))[::-1]
s2 = (s2.zfill(max1))[::-1]
end = ''
temp = '0'
for i in range(max1):
a = int(s1[i])
b = int(s2[i])
c = int(temp)
if a+b+c<10:
end+=str(a+b+c)
temp = '0'
else:
end+=str(a+b+c)[-1]
temp = str(a+b+c)[0]
else:
if temp !='0':
end+=temp
print(end[::-1])
用max1存储最长的数的长度,将短的用zfill补0然后倒序,然后逐位相加如果超过9用一个字符储存超过的下次求和时加上最后检测一下最后一次有没有超过超过就进位1,最后倒序输出
