1 2 3 4 5 6 7 8 9 10 11 12
| class Solution: def multiply(self, num1: str, num2: str) -> str: m, n = len(num1), len(num2) num = [0] * (m + n) for i in range(m - 1, -1, -1): c = 0 for j in range(n - 1, -1, -1): s = num[i + j + 1] + int(num1[i]) * int(num2[j]) + c c, num[i + j + 1] = divmod(s, 10) num[i] = c res = ''.join(map(str, num)).lstrip('0') return res if res else '0'
|