3549:两个多项式相乘(★★)
目录
题目
给定两个整数数组 poly1 和 poly2,其中每个数组中下标 i 的元素表示多项式中 xi 的系数。
设 A(x) 和 B(x) 分别是 poly1 和 poly2 表示的多项式。
返回一个长度为 (poly1.length + poly2.length - 1) 的整数数组 result 表示乘积多项式 R(x) = A(x) * B(x) 的系数,其中 result[i] 表示 R(x) 中 xi 的系数。
示例 1:
输入:poly1 = [3,2,5], poly2 = [1,4]
输出:[3,14,13,20]
解释:
A(x) = 3 + 2x + 5x2且B(x) = 1 + 4xR(x) = (3 + 2x + 5x2) * (1 + 4x)R(x) = 3 * 1 + (3 * 4 + 2 * 1)x + (2 * 4 + 5 * 1)x2 + (5 * 4)x3R(x) = 3 + 14x + 13x2 + 20x3- 因此,result =
[3, 14, 13, 20]。
示例 2:
输入:poly1 = [1,0,-2], poly2 = [-1]
输出:[-1,0,2]
解释:
A(x) = 1 + 0x - 2x2且B(x) = -1R(x) = (1 + 0x - 2x2) * (-1)R(x) = -1 + 0x + 2x2- 因此,result =
[-1, 0, 2]。
示例 3:
输入:poly1 = [1,5,-3], poly2 = [-4,2,0]
输出:[-4,-18,22,-6,0]
解释:
A(x) = 1 + 5x - 3x2且B(x) = -4 + 2x + 0x2R(x) = (1 + 5x - 3x2) * (-4 + 2x + 0x2)R(x) = 1 * -4 + (1 * 2 + 5 * -4)x + (5 * 2 + -3 * -4)x2 + (-3 * 2)x3 + 0x4R(x) = -4 -18x + 22x2 -6x3 + 0x4- 因此,result =
[-4, -18, 22, -6, 0]。
提示:
1 <= poly1.length, poly2.length <= 5 * 104-103 <= poly1[i], poly2[i] <= 103poly1与poly2至少包含一个非零系数。
分析
- fft 模板
解答
|
|
3480 ms