题目
T
≤
20
,
n
≤
100
,
a
i
≤
25000
T\le20,n\le100,a_i\le25000
T≤20,n≤100,ai≤25000
思路
F
(
x
)
=
∏
i
=
1
n
G
i
(
x
)
F(x)=\prod_{i=1}^nG_i(x)
F(x)=i=1∏nGi(x)
G
i
(
x
)
=
∑
j
=
0
+
∞
x
j
v
i
G_i(x)=\sum_{j=0}^{+\infty}x^{jv_i}
Gi(x)=j=0∑+∞xjvi
直接
F
F
T
FFT
FFT 就
T
T
T 了
然后闻所未闻的操作(虽然多项式这样干过)
F
(
x
)
=
e
x
p
∑
i
=
1
n
l
n
(
G
i
(
x
)
)
F(x)=exp\sum_{i=1}^nln(G_i(x))
F(x)=expi=1∑nln(Gi(x))
考虑
l
n
(
G
i
(
x
)
)
ln(G_i(x))
ln(Gi(x)) 化简
l
n
(
G
i
(
x
)
)
=
l
n
(
1
1
−
x
v
i
)
=
−
l
n
(
1
−
x
v
i
)
ln(G_i(x))=ln(\frac{1}{1-x^{v_i}})=-ln(1-x^{v_i})
ln(Gi(x))=ln(1−xvi1)=−ln(1−xvi)
然后什么求导后再积分回来
−
l
n
(
1
−
x
v
i
)
=
−
∫
−
v
i
x
v
i
−
1
1
−
x
v
i
=
−
∫
−
v
i
x
v
i
−
1
∑
j
=
0
+
∞
x
j
v
i
=
∫
v
i
∑
j
=
0
+
∞
x
(
j
+
1
)
v
i
−
1
=
v
i
∑
j
=
0
+
∞
x
(
j
+
1
)
v
i
(
j
+
1
)
v
i
=
∑
j
=
0
+
∞
x
(
j
+
1
)
v
i
j
+
1
=
∑
j
=
1
+
∞
x
j
v
i
j
-ln(1-x^{v_i})=-\int\frac{-v_ix^{v_i-1}}{1-x^{v_i}}=\\-\int-v_ix^{v_i-1}\sum_{j=0}^{+\infty}x^{jv_i}=\int v_i\sum_{j=0}^{+\infty}x^{(j+1)v_i-1}=v_i\sum_{j=0}^{+\infty}\frac{x^{(j+1)v_i}}{(j+1)v_i}\\=\sum_{j=0}^{+\infty}\frac{x^{(j+1)v_i}}{j+1}=\sum_{j=1}^{+\infty}\frac{x^{jv_i}}{j}
−ln(1−xvi)=−∫1−xvi−vixvi−1=−∫−vixvi−1j=0∑+∞xjvi=∫vij=0∑+∞x(j+1)vi−1=vij=0∑+∞(j+1)vix(j+1)vi=j=0∑+∞j+1x(j+1)vi=j=1∑+∞jxjvi
那么
F
(
x
)
=
e
x
p
∑
i
=
1
n
∑
j
=
1
+
∞
x
j
v
i
j
F(x)=exp\sum_{i=1}^n\sum_{j=1}^{+\infty}\frac{x^{jv_i}}{j}
F(x)=expi=1∑nj=1∑+∞jxjvi
调和级数+exp
O
(
m
l
o
g
m
)
O(mlogm)
O(mlogm)