题解 | #高精度整数加法#

高精度整数加法

https://www.nowcoder.com/practice/49e772ab08994a96980f9618892e55b6

num1 = input().strip()
num2 = input().strip()

n = min(len(num1), len(num2))

advance = 0
res = []
for i in range(-1, -n-1, -1):
    s = int(num1[i]) + int(num2[i]) + advance
    advance = s // 10
    res.append(str(s % 10))

if len(num1) > len(num2):
    for j in range(-n-1, -len(num1)-1, -1):
        s = int(num1[j]) + advance
        advance = s // 10
        res.append( str(s % 10) )
    if advance > 0:
        res.append(str(advance))
elif len(num1) < len(num2):
    for j in range(-n-1, -len(num2)-1, -1):
        s = int(num2[j]) + advance
        advance = s // 10
        res.append( str(s % 10) )
    if advance > 0:
        res.append(str(advance))
else:
    if advance > 0:
        res.append(str(advance))

print(''.join(res[-1::-1]))

全部评论

相关推荐

ming_ri:“很抱歉,您的简历和我们当前的职位需求不是很匹配”
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务