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

高精度整数加法

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

# s1 = int(input())
# s2 = int(input())

# print(s1+s2)

s1 = input()
s2 = input()

s1_stack = []
s2_stack = []
flag = 0
res = []

for i in s1:
    s1_stack.append(i)
for i in s2:
    s2_stack.append(i)
while(s1_stack and s2_stack):
    s1_a = s1_stack.pop()
    s2_a = s2_stack.pop()
    if flag == 0:
        s12 = int(s1_a) + int(s2_a)
    else:
        s12 = int(s1_a) + int(s2_a)+1
    if s12 <10:
        res.append(str(s12))
        flag = 0
    else:
        res.append(str(s12%10))
        flag = 1
while (flag == 1):
    if s1_stack:
        ans = int(s1_stack.pop())+1
        if ans < 10:
            res.append(str(ans))
            flag = 0
        else:
            res.append(str(ans%10))
    elif s2_stack:
        ans = int(s2_stack.pop())+1
        if ans < 10:
            res.append(str(ans))
            flag = 0
        else:
            res.append(str(ans%10))
    else:
        res.append('1')
        flag = 0
if s1_stack:
    res += s1_stack[::-1]
elif s2_stack:
    res += s2_stack[::-1]
    
print(''.join(res[::-1]))
一种是直接利用python大整数计算直接输出,另外一种就是按位,从后往前相加
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-07 14:00
不想多说了,什么逆天HR,还要教我礼貌😂
机械打工仔:这不纯傻卵吗,他还操心上别人老板了
投递BOSS直聘等公司7个岗位
点赞 评论 收藏
分享
06-17 21:57
门头沟学院 Java
白友:噗嗤,我发现有些人事就爱发这些,明明已读不回就行了,就是要恶心人
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-08 12:05
俺不中了,BOSS遇到了一个hr,我觉得我咨询的问题都很正常吧,然后直接就被拒绝了???
恶龙战士:你问的太多了,要不就整理成一段话直接问他,一个一个问不太好
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务