把n封信装进n个信封里,每封信都装错了,问一共有多少种情况?
为了方便表述,把n个信封编号为1,2,……,k,……,n。把n封信编号为f1,f2,f3,……,fk,……,fn.共有情况f(n)种。
如果n = 1,显然不可能装错,f(1) = 0;
如果n = 2,只有两种情形,一种装对,一种装错,f(2) = 1;
如果n > 2,那么考虑装错的情形,fn可以装的位置有n-1种,先假定把fn装进信封k中,则fk是否装进信封n中,分两种情况:
(1)fk装进信封n中,则余下的问题是f(n-2);
(2)fk不装进信封n中,这时可以假设信封k和fn消失,把fk看错fn,问题就是f(n-1)了。
所以f(n) = (n-1)*( f(n-2)+f(n-1) );