错排问题有许多表述

有 n 个元素进行排列,要求没有任何一个元素出现在原来的位置上,有多少排列方法?

有 n 封信和对应的 n 个信封,把所有信随机装入信封,要求每封信都不能装进自己的信封。问有多少种装法?

有 n 对夫妻参加一次聚会,现将所有参会人员任意分成一男一女 n 组,没有任何丈夫匹配到自己的妻子,有多少种匹配?


01 用递推关系推出通项

记错排数为 D(n),n 个元素记为 {1,2,…,n}。

不妨先考虑元素 1,它可以放在 2,3,…,n 共 n−1 个位置。不妨设其放在位置 k。则:

(1) 元素 k 放在位置 1,剩下的元素排列的方法数为 D(n−2)。

(2) 元素 k 不放在位置 1,则现有的 {2,3,…,k,…,n} 共 n−1 个元素需要放在 {1,2,…,n}∖{k} 共 n−1 个位置,且其中任意一个元素均有且只有一个位置不允许放入:k 不能放入位置 1,其余元素不能放入原位置。

这与 n−1 个元素的错排问题完全相同,因此有 D(n−1) 种方法。

综上,

D(n)=(n−1)[D(n−1)+D(n−2)].

接下来推出通项。

两边同时除以 n!,令

an=D(n)n!,

则

nan=(n−1)an−1+an−2,

即

n(an−an−1)=−(an−1−an−2).

又

a2−a1=12,

故

an−an−1=(−1)nn!.

于是

an=12!−13!+⋯+(−1)n1n!.

综上,

D(n)=n!(12!−13!+⋯+(−1)n1n!).

02 容斥原理

什么是容斥原理?

|⋃i=1nAi|=∑k=1n(−1)k+1∑1≤i1<⋯<ik≤n|Ai1∩⋯∩Aik|.

从 1 到 n,奇加偶减。

题解

设

Ai={第 i 个元素仍然在原来的位置}.

则

D(n)=n!−|⋃i=1nAi|.

根据容斥原理,

D(n)=n!−((n1)(n−1)!−(n2)(n−2)!+⋯+(−1)n−1(nn)0!).

因此

D(n)=n!(1−11!+12!−13!+⋯+(−1)n1n!).

由于

1−11!=0,

所以

D(n)=n!(12!−13!+⋯+(−1)n1n!).