引自 百度-错排问题
错排问题是组合数学发展史上的一个重要问题,错排数也是一项重要的数。令 { a k a_k ak} ( 1 ⩽ k ⩽ n ) (1 \leqslant k \leqslant n) (1⩽k⩽n) 是 { n n n}, n ∈ N n \in N n∈N 的一个错排,如果每个元素都不在其对应下标的位置上,即 a k ≠ k a_k \not= k ak=k,那么这种排列称为错位排列,或错排、重排(Derangement)。
我们从分析1 2 3 4的错排开始:
1 2 3 4的错排有:
4 3 2 1,4 1 2 3,4 3 1 2,
3 4 1 2,3 4 2 1,2 4 1 3,
2 1 4 3,3 1 4 2,2 3 4 1。
第一列是4分别与123互换位置,其余两个元素错排。
1 2 3 4->4 3 2 1,
1 2 3 4->3 4 1 2,
1 2 3 4-> 2 1 4 3
第2列是4分别与312(123的一个错排)的每一个数互换
3 1 2 4->4 1 2 3,
3 1 2 4->3 4 2 1,
3 1 2 4->3 1 4 2
第三列则是由另一个错排231和4换位而得到
2 3 1 4->4 3 1 2,
2 3 1 4->2 4 1 3,
2 3 1 4->2 3 4 1
上面的分析结果,实际上是给出一种产生错排的结果。
递推关系
为求其递推关系,分两步走:
第一步,考虑第n个元素,把它放在某一个位置,比如位置k,一共有n-1种放法;
第二步,考虑第k个元素,这时有两种情况:
(1)把它放到位置n,那么对于除n以外的n-1个元素,由于第k个元素放到了位置n,所以剩下n-2个元素的错排即可,有
D
n
−
2
D_{n-2}
Dn−2 种放法;
(2)第k个元素不放到位置n,这时对于这n-1个元素的错排,有
D
n
−
1
D_{n-1}
Dn−1 种放法。
根据乘法和加法法则,综上得到
D
n
=
(
n
−
1
)
(
D
n
−
1
+
D
n
−
2
)
D_n = (n - 1)(D_{n-1} + D_{n-2})
Dn=(n−1)(Dn−1+Dn−2)
特殊地,存在
D
0
=
1
D_0 = 1
D0=1,
D
1
=
0
D_1 = 0
D1=0
此外,存在
D
n
−
D
n
−
1
=
−
[
D
n
−
1
−
(
n
−
1
)
D
n
−
2
]
=
(
−
1
)
2
[
D
n
−
2
−
(
n
−
2
)
D
n
−
3
]
=
.
.
.
=
(
−
1
)
n
−
2
(
D
2
−
D
1
)
=
(
−
1
)
n
\begin{aligned} D_n - D_{n-1} &= -[D_{n-1} - (n - 1)D_{n-2}]\\ &= (-1) ^2 [D_{n-2} - (n - 2)D_{n-3}]\\ &= ... \\&= (-1) ^ {n - 2} (D_2 - D_1)\\&= (-1) ^ n \end{aligned}
Dn−Dn−1=−[Dn−1−(n−1)Dn−2]=(−1)2[Dn−2−(n−2)Dn−3]=...=(−1)n−2(D2−D1)=(−1)n
因此,
D
n
=
n
D
n
−
1
+
(
−
1
)
n
D_n = nD_{n - 1} + (-1) ^ n
Dn=nDn−1+(−1)n
例 Codeup 22648: 淘气的钥匙(key)
啊打KaTeX真的好累,我已经尽力了QAQ