63.2%
可以转化为著名的信封问题(错位排列)
一共A(10,10)中排法 只需求出 没有1对装对的排法
就是标准的错位排列了
这是著名的信封问题,很多著名的数学家都研究过
瑞士数学家欧拉按一般情况给出了一个递推公式:
用A、B、C……表示写着n位友人名字的信封,a、b、c……表示n份相应的写好的信纸.把错装的总数为记作f(n).假设把a错装进B里了,包含着这个错误的一切错装法分两类:
(1)b装入A里,这时每种错装的其余部分都与A、B、a、b无关,应有f(n-2)种错装法.
(2)b装入A、B之外的一个信封,这时的装信工作实际是把(除a之外的) 份信纸b、c……装入(除B以外的)n-1个信封A、C……,显然这时装错的方法有f(n-1)种.
总之在a装入B的错误之下,共有错装法f(n-2)+f(n-1)种.a装入C,装入D……的n-2种错误之下,同样都有f(n-2)+f(n-1)种错装法,因此:
f(n)=(n-1) {f(n-1)+f(n-2)}
这是递推公式,令n=1、2、3、...10
f(1)=0 f(2)=1 f(3)=2 f(4)=9 f(5)=44 f(6)=265 f(7)=854
f(8)=14833 f(9)=133496 f(10)=1334961
所以概率=1-f(10)/A(10,10)=63.2%
另外一种算法就是用容斥原理直接算
用A1,A2,……,An表示以下事件:Ak表示第k封信放在本来的信封上.求出A1∪A2∪……∪An的概率 然后用1减去它就是所需答案了
那么,根据容斥原理,有:
P(A1∪A2∪……∪An)=
P(A1)+P(A2)+……+P(An)-(P(A1∩A2)+P(A1∩A3)+……+P(A(n-1)∩An))(注意:求和取遍所有不同的Ai∩Aj)+(P(A1∩A2∩A3)+P(A1∩A2∩A4)+……+P(A(n-2)∩P(A(n-1))∩P(An)))(注意:求和取遍所有不同的Ai∩Aj∩Ak)+……+(-1)^(n-1)P(A1∩A2∩……∩An)
=(n-1)!*n/n!-(n-2)!/n!*C_n^2+(n-3)!/n!*C_n^3+……+(-1)^(n-1)/n!
=1-1/2!+1/3!-……+(-1)^(n-1)/n!
即至少有一对装对的概率就是1-1/2!+1/3!-……+(-1)^(n-1)/n!
这里 取n=10 故概率=63.2%
参考资料