大数加法 big number add
发布时间:2020-12-14 03:52:59 所属栏目:大数据 来源:网络整理
导读:问题起源于欧拉项目的问题11。要把1000个50位整数累加起来。字符串搞起。 n = 55def add(a,b):while len(a) n:a = "0" + awhile len(b) n:b = "0" + bsum = []for _ in range(0,n):sum.append(0)i = n-1while i 0:s = int(a[i]) + int(b[i]) + sum[i]if s 10
问题起源于欧拉项目的问题11。要把1000个50位整数累加起来。字符串搞起。 n = 55 def add(a,b): while len(a) < n: a = "0" + a while len(b) < n: b = "0" + b sum = [] for _ in range(0,n): sum.append(0) i = n-1 while i > 0: s = int(a[i]) + int(b[i]) + sum[i] if s < 10: sum[i] = s else: sum[i] = s - 10 sum[i-1] = 1 + sum[i-1] i -= 1 result = '' for i in range(0,n): result += str(sum[i]) return result #a = "37107287533902102798797998220837590246510135740250" #b = "46376937677490009712648124896970078050417018260538" #print add(a,b) final = "" for _ in range(0,n): final += "0" f1 = file('input.txt') while 1: line = f1.readline() if len(line) == 0: break line = line.strip("rn") final = add(line,final) print len(final) print final print final.strip("0") print final.strip("0")[0:10] f1.close() (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |