leetcode43 字符串相乘 python

字符串相乘(中等)(leetcode43)

给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。

示例1:输入: num1 = "2", num2 = "3",输出: "6"

示例 2:输入: num1 = "123", num2 = "456",输出: "56088"

说明:不能使用任何标准库的大数类型(比如 BigInteger)或直接将输入转换为整数来处理。

def multiply(self, num1, num2):

n1=[]

        n2=[]

        ans=0 

        [n1.append(int(i)) for i in num1[::-1]]

        [n2.append(int(i)) for i in num2[::-1]]

        for i in range(len(n1)):

            for j in range(len(n2)): #遍历两个n

                if (i+j)==0: #设置系数

                    k=1

                else:

                    k=int('1'+(i+j)*'0') #如果i+j=2,k=100

                ans=ans+(n1[i]*n2[j])*k

        return str(ans)

猜你喜欢

转载自blog.csdn.net/qq_37792144/article/details/89173808