题解 | #大数加法#

大数加法

http://www.nowcoder.com/practice/11ae12e8c6fe48f883cad618c2e81475

def solve(self , s , t ):
#1.首先把两个字符串右对齐,补0;
maxLen=max(len(s),len(t))+1
s='0'(maxLen-len(s))+s
t='0'
(maxLen-len(t))+t
#2.进位标志flag初始化为1,然后从末尾逐位向前计算结果,
#并存放在结果数组rs中;
flag,rs=0,[]
for i in range(maxLen-1,-1,-1):
sum=int(s[i])+int(t[i])+flag
sub=sum%10
flag=sum//10
rs.append(str(sub))
#3.如果rs中最后一位是'0'则表示最高位没有发生进位,予以剔除;
if rs[-1]=='0':rs=rs[:-1]
#4.拼接字符串,返回结果;
rs=''.join(rs[::-1])
return rs

全部评论

相关推荐

点赞 评论 收藏
分享
昨天 11:16
湖南大学 Web前端
我看到好多人都在说0offer好焦虑,结果一看是投了百度快手字节啥的。好像大家都是只想通过校招进大厂,对小公司是不考虑的吗😂可是能进大厂的难道不是只有少部分人吗,真心发问
梦想是成为七海千秋:沉默的大多数吧,喜欢晒的都是能引起共鸣的大厂,找小厂的人,别人也不认识你这个小厂,就自己偷偷找了实际上大多数人哪有什么机会能找到大厂
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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