题目描述
给定两个正整数,计算它们的和。
输入格式
共两行,每行包含一个整数。
输出格式
共一行,包含所求的和。
数据范围
1≤整数长度≤100000
样例
输入样例:
12
23
输出样例:
35
算法1
高精度加法
时间复杂度
参考文献
python 代码
def add(a,b):
t=0
c=[]
i=0
while(i<len(a) or i<len(b)):
if i<len(a):
t+=a[i]
if i<len(b):
t+=b[i]
c.append(t%10) #t=a[i]+b[i]+进位
t //=10 #t>=10就进位
i+=1
if t: #看最高位有没有进位
c.append(1)
return c
if __name__ == "__main__":
a = list(map(int,input())) #由于是大整数所以用字符串来读
b = list(map(int,input()))
for i in range(len(a) // 2):
a[i],a[len(a) - i - 1] = a[len(a) - i - 1],a[i]
#1.m=[] #3种数组逆序的方法
# for i in range(len(a)):
# m.append(m[-(i+1)])
#2. a.reversse()
for i in range(len(b) // 2):
b[i],b[len(b) - i - 1] = b[len(b) - i - 1],b[i]
c = add(a,b)
for i in range(len(c) // 2):
c[i],c[len(c) - i - 1] = c[len(c) - i - 1],c[i]
print("".join(str(i) for i in c))