415. Add Strings

来源:互联网 发布:js代码重复度检查 编辑:程序博客网 时间:2024/06/07 20:37

题意:Given two non-negative numbers num1 and num2 represented as string, return the sum of num1 and num2.

Note:
The length of both num1 and num2 is < 5100.
Both num1 and num2 contains only digits 0-9.
Both num1 and num2 does not contain any leading zero.
You must not use any built-in BigInteger library or convert the inputs to integer directly.

思路:用if代替填充0,从低位像高位计算:

class Solution(object):    def addStrings(self, num1, num2):        """        :type num1: str        :type num2: str        :rtype: str        """        val, carry, ans= 0, 0, ''        for i in xrange(max(len(num1),len(num2))):            val = carry            if i < len(num1):                val += ord(num1[~i])-ord('0')            if i < len(num2):                val += ord(num2[~i])-ord('0')            carry = val/10            val %= 10            ans += str(val)        if carry:            ans += str(carry)        return ans[::-1]
0 0
原创粉丝点击