用An记号表示n时的取法数,则{An}是数列.
则有如下递推:
第1个人有n-1个选择,假设选的是2(有对称性)
第2个人:选名片1则余下n-2人有An-2种取法
不选名片1,我们让第1个人代替第2个人去参加余下的事情,则正好是n-1个人选名片,且均不能选自己的名片,有An-1
所以An=(n-1)(An-1 +An-2)
当n比较小时,就用这个递推很好用.
通式的话,从楼上的链接抄如下:
An=[(-1)^0/0!+(-1)^1/1!+(-1)^2/2!+(-1)^3/3!+,…,+(-1)^n/n!]*n!
还可以用这个递推去证明这个通式.