问题大意:
1.有n个信封,同样有n封信;
2.这n个信都装错信封;
输出:
总共有多少种错排的方式;
题解:
n个人的排列数是n的阶乘n!,随机选取m个人作为拿到自己礼物的一组,有Cnm种方法,假设用D(n-m)表示剩下的n-m个人全部拿错的方法数,那么答案就是:
D(n) = (n-1) [D(n-2) + D(n-1)]
但是这应该怎么算呢,其实很简单,用递归就好了!
这是由瑞典著名科学家欧拉按一般情况给了一个公式
D(n) = (n-1) [D(n-2) + D(n-1)]
D(1)=0,D(2)=1;