定义:
一个有n个元素的排列,若一个排列中所有的元素都不在自己原来的位置上,那么这样的排列就称为原排列的一个错排。 n个元素的错排数记为D(n)。
推导:
一.递推
首先将第一个元素错排,假设将第一个元素放到第k位,那么对于第k位的元素,有两种情况
1.k放在第1位,此时相当于对处第1位与第k位的n-2个元素错排,方案数D(n-2)
2.k不放在第1位,此时可以看做将第k位与第1位交换,对除第k位以外的元素进行错排,方案数D(n-1)
考虑k有n-1种选择,递推式为

<nobr> D(n)=(n1)(D(n1)+D(n2)) </nobr>

二.容斥
对于1-n的任意排列,方案数n!种,对于至少有1个元素在正确位置的,方案数(n-1)!,依次类推可得
<nobr> D(i)=i=0n(1)iCin(ni)!=i=0n(1)in!i! </nobr>

对于n=1,f(1)=0
对于n>1,归纳
<nobr> D(i)=i=0n(1)in!i!=ni=0n1(1)i(n1)!i!+(1)nn!n!=D(i1)i+(1)i </nobr>

不完全错排:
1-n任意排列,恰有m个数在它们各自对应的位置上,满足条件的排列的方案数
对于放对位置的m个数,位置已经确定,剩余n-m个数放置的方案数为D(n-m),考虑m个数随便选,最终答案 <nobr> CmnD(nm) </nobr>