从小到大,从后往前放,即写出一个放东西的顺序序列
{
p
i
}
\{p_i\}
{pi},将其划分成若干段极长的下降序列,每一段从小到大对应一个数字。假设要求出
t
t
t 的答案,我们可以枚举每个处于第
t
t
t 个下降序列的位置并统计它的贡献
∑
i
ways
i
,
t
(
n
i
)
(
n
−
i
)
!
\sum_{i}\text{ways}_{i,t}\binom{n}{i}(n-i)!
∑iwaysi,t(in)(n−i)!
其中
ways
i
,
j
\text{ways}_{i,j}
waysi,j 表示长为
i
i
i 的排列,划分成
j
j
j 个极长下降段的方案数
这显然是可以容斥的
ways
i
,
j
=
∑
k
≥
j
{
i
i
−
k
}
(
i
−
k
)
!
(
−
1
)
k
−
j
(
k
j
)
\text{ways}_{i,j}=\sum_{k\ge j}\begin{Bmatrix}i\\i-k\end{Bmatrix}(i-k)!(-1)^{k-j}\binom{k}{j}
waysi,j=k≥j∑{ii−k}(i−k)!(−1)k−j(jk)
即对每一个
t
t
t 算出
n
!
∑
i
≤
n
∑
k
[
z
i
]
(
e
z
−
1
)
i
−
k
(
−
1
)
t
−
k
(
t
k
)
=
n
!
∑
k
(
−
1
)
t
−
k
(
t
k
)
∑
i
≤
n
[
z
i
]
(
e
z
−
1
)
i
−
k
n!\sum_{i\le n}\sum_{k}[z^i](e^z-1)^{i-k}(-1)^{t-k}\binom{t}{k}\\=n!\sum_{k}(-1)^{t-k}\binom{t}{k}\sum_{i\le n}[z^i](e^z-1)^{i-k}
n!i≤n∑k∑[zi](ez−1)i−k(−1)t−k(kt)=n!k∑(−1)t−k(kt)i≤n∑[zi](ez−1)i−k
对每个
k
k
k 求出
∑
k
≤
i
≤
n
[
z
i
]
(
e
z
−
1
)
i
−
k
=
∑
k
≤
i
≤
n
[
z
k
]
(
e
z
−
1
z
)
i
−
k
\sum_{k\le i\le n}[z^i](e^z-1)^{i-k}\\=\sum_{k\le i\le n}[z^k](\frac{e^z-1}{z})^{i-k}
k≤i≤n∑[zi](ez−1)i−k=k≤i≤n∑[zk](zez−1)i−k
设
f
=
e
z
−
1
z
,
g
=
e
z
−
1
f=\frac{e^z-1}{z},g=e^z-1
f=zez−1,g=ez−1
即求
[
z
k
]
f
n
−
k
+
1
−
1
f
−
1
=
[
z
n
+
1
]
g
n
−
k
+
1
−
1
f
−
1
[z^k]\frac{f^{n-k+1}-1}{f-1}=[z^{n+1}]\frac{g^{n-k+1}-1}{f-1}
[zk]f−1fn−k+1−1=[zn+1]f−1gn−k+1−1
一个技巧是,若要对每个
k
k
k 求出
[
z
n
]
F
(
z
)
G
(
z
)
k
[z^n]F(z)G(z)^k
[zn]F(z)G(z)k
我们写成
[
z
n
u
k
]
∑
i
F
(
z
)
(
u
G
(
z
)
)
i
=
F
(
z
)
1
−
u
G
(
z
)
[z^nu^k]\sum_{i}F(z)(uG(z))^i=\frac{F(z)}{1-uG(z)}
[znuk]i∑F(z)(uG(z))i=1−uG(z)F(z)
然后进行拉格朗日反演
[
z
n
u
k
]
F
(
z
)
1
−
u
G
(
z
)
=
[
z
n
−
1
u
k
]
1
n
(
F
(
G
−
1
(
z
)
)
1
−
u
z
)
′
(
z
G
(
z
)
)
n
=
[
z
n
−
1
u
k
]
1
n
(
u
F
(
G
−
1
(
z
)
)
(
1
−
u
z
)
2
+
F
(
G
−
1
(
z
)
)
′
1
−
u
z
)
(
z
G
(
z
)
)
n
[z^nu^k]\frac{F(z)}{1-uG(z)}=[z^{n-1}u^k]\frac{1}{n}(\frac{F(G^{-1}(z))}{1-uz})'(\frac{z}{G(z)})^n\\=[z^{n-1}u^k]\frac{1}{n}(\frac{uF(G^{-1}(z))}{(1-uz)^2}+\frac{F(G^{-1}(z))'}{1-uz})(\frac{z}{G(z)})^n
[znuk]1−uG(z)F(z)=[zn−1uk]n1(1−uzF(G−1(z)))′(G(z)z)n=[zn−1uk]n1((1−uz)2uF(G−1(z))+1−uzF(G−1(z))′)(G(z)z)n
套用到这道题上就可以了