Given two non-negative integers num1 and num2 represented as string, return the sum of num1 and num2.

Note:

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

Python

 
class Solution(object):
    def addStrings(self, num1, num2):
        """
        :type num1: str
        :type num2: str
        :rtype: str

        """
        index = len(num1) if len(num1) < len(num2) else len(num2) up = 0 result = "" for i in range(index): a = int(num1[len(num1) - 1 - i]) + int(num2[len(num2)-1 - i]) + up up = 1 if a > 9 else 0
            result = str(a % 10) + result

        other = num1 if len(num1) > len(num2) else num2
        for j in range(len(other) - index):
            a = int(other[len(other) - 1 - index - j]) + up
            up = 1 if a > 9 else 0
            result = str(a % 10) + result
        if up:
            result = str(up) + result
        return result

发表评论