|
发表于 2020-2-29 21:55:43
|
显示全部楼层
本帖最后由 kinkon 于 2020-2-29 23:54 编辑
这次应该对了吧
- def f339(a, b):
- a, b = a[::-1], b[::-1]
- alen,blen = len(a), len(b)
- if alen < blen:
- M = alen
- else:
- M = blen
- s = ''
- for i in range(M):
- s += str(int(a[i]) + int(b[i]))[::-1]
- s += a[M:] + b[M:]
- return s[::-1]
复制代码
字符串不翻转试试会不会快一些
- def f339(a, b):
- alen,blen = len(a), len(b)
- if alen < blen:
- M = alen
- else:
- M = blen
- s = ''
- for i in range(-M, 0):
- s += str(int(a[i]) + int(b[i]))
- s = a[:-M] + b[:-M] + s
- return s
复制代码
再精简,好像会更快一些
- def f339(a, b):
- M = min(len(a), len(b))
- return a[:-M] + b[:-M] + ''.join([str(int(a[i]) + int(b[i])) for i in range(-M, 0)])
-
复制代码 |
评分
-
查看全部评分
|