天天看点

信封装错问题

问题原貌:将N封信装入N个信封,问全部装错的方式。

递归思路:第一种情况,若将A信装入B信封,B信装入A信封,则剩余信的错装方式与A、B无关,所以有f(n-2)种。

                      第二种情况,若将A信装入除B之外的C信封,则剩余信的错装方式为将除A之外的n-1封信,装入除B之外的n-1个信封,所以有f(n-1)种。

在A选择装不装入B的时候又有n-1种选择,所以f(n)=(n-1)(f(n-1)+f(n-2))

组合思路:f(n)=n!×(1/2!-1/3!+1/4!-1/5!+……(-1)^n/n!)

错装k封信:f(n,k)=n!×(1/2!-1/3!+……(-1)^k/k!)

衍生问题:N对夫妇跳舞,全部不匹配;N个人戴帽子,全部戴错。