DAY18:leetcode #43 Multiply Strings
来源:互联网 发布:淘宝网首页中年女装 编辑:程序博客网 时间:2024/06/06 05:16
Given two numbers represented as strings, return multiplication of the numbers as a string.
Note:
- The numbers can be arbitrarily large and are non-negative.
- Converting the input string to integer is NOT allowed.
- You should NOT use internal library such as BigInteger.
Subscribe to see which companies asked this question
class Solution(object): def multiply_1(self, num1, num2): result = [0] * (len(num1)+1) for i in range(len(num1))[::-1]: result[i+1] += (num1[i] * num2) % 10 result[i] += (num1[i] * num2) // 10 return result def multiply(self, num1, num2): """ :type num1: str :type num2: str :rtype: str """ num1 = list(num1) num2 = list(num2) for i in range(len(num1)): num1[i] = int(num1[i]) for i in range(len(num2)): num2[i] = int(num2[i]) data = [] for n2 in num2[::-1]: data.append(self.multiply_1(num1,n2)) len_1 = len(num1) len_2 = len(num2) total_len = len_1 + len_2 result = [0] * (total_len + 1) for i in range(len(data)): for j in range(len_1 + 1)[::-1]: result[len_2 - i + j] = (result[len_2 - i + j] + data[i][j]) c = 0 for i in range(total_len + 1)[::-1]: temp = (result[i] + c) // 10 result[i] = (result[i] + c) % 10 c = temp temp = -1 flag = True for i in range(total_len + 1): if flag and result[i] != 0: temp = i flag =False result[i] = str(result[i]) if temp == -1: return '0' return ''.join(result[temp:])
0 0
- DAY18:leetcode #43 Multiply Strings
- LeetCode(43) Multiply Strings
- [leetcode 43] Multiply Strings
- [LeetCode 43]Multiply Strings
- leetcode || 43、Multiply Strings
- leetcode-43 Multiply Strings
- Multiply Strings leetcode 43
- leetcode 43: Multiply Strings
- Leetcode 43 Multiply Strings
- leetcode 43 : Multiply Strings
- Leetcode #43 Multiply Strings
- leetcode 43: Multiply Strings
- LeetCode(43) Multiply Strings
- LeetCode-43 Multiply Strings
- Leetcode#43||Multiply Strings
- [Leetcode]#43 Multiply Strings
- leetcode-43 Multiply Strings
- leetcode 43:Multiply Strings
- nginx作为下载文件服务器
- 测试了hprose,挺方便,不过有限制
- Android进程等级
- Rxjava简介(一)
- 如何根据SeetaFaceDetection教程创建自己的工程
- DAY18:leetcode #43 Multiply Strings
- jquery的ajax中dataType="json",返回值判断是否为空,是否为null
- window对象的属性和方法
- 在执行lua脚本时如何统一捕获异常
- JAVA反射总结(不错)
- tcp窗口滑动以及拥塞控制
- C# 二进制,十进制,十六进制 互转
- 杂文
- 快速自动更新Android Studio版本