挑战
给定一个p具有阶1和度的实系数的n多项式,求另一个q度数的多项式最多n使得(p∘q)(X) = p(q(X)) ≡ X mod X^(n+1),或者换句话说,使得p(q(X)) = X + h(X)其中h是一个任意多项式ord(h) ≥ n+1。多项式q由唯一确定p。
对于一个多项式p(X) = a(n)*X^n + a(n+1)*X^(n+1) + ... + a(m)*X^m,其中n <= m和a(n) ≠ 0,a(m) ≠ 0我们说n是为了中p和m是度的p。
简化:您可以假设它p具有整数系数,并且a(1)=1(so p(X) = X + [some integral polynomial of order 2])。在这种情况下,q也具有积分系数。
简化的目的是避免浮点数的问题。但是,出于说明目的,有一个非整体示例。
例子
- 考虑泰勒级数的
exp(x)-1 = x + x^2/2 + x^3/6 + x^4/24 + ...和ln(x+1) = x - x^2/2 + x^3/3 - x^4/4 + ...那么很明显ln(exp(x)-1+1)= x。如果仅考虑这两个函数的4级的泰勒多项式,我们将得到以下表示法(请参见测试用例)p = [-1/4,1/3,-1/2,1,0],q = [1/24, 1/6, 1/2, 1,0]并且(p∘q)(X) ≡ X mod X^5

考虑多项式
p(X) = X + X^2 + X^3 + X^4。然后q(X) = X - X^2 + X^3 - X^4我们得到(p∘q)(X) = p(q(X)) = X - 2X^5 + 3X^6 - 10X^7 +...+ X^16 ≡ X mod X^5
测试用例
这里,输入和输出多项式被写为系数列表(最高阶多项式的系数在前,常数项在后):
p = [4,3,2,0]; q=[0.3125,-.375,0.5,0]
整体测试用例:
p = [1,0]; q = [1,0]
p = [9,8,7,6,5,4,3,2,1,0]; q = [4862,-1430,429,-132,42,-14,5,-2,1,0]
p = [-1,3,-3,1,0]; q = [91,15,3,1,0]