我对“错排问题”的理解
思路来自 百度百科 中的一段话:
设 \(n\) 个数的错排方案数为 \(D_n\),
第一步,考虑第 \(n\) 个元素,把它放在某一个位置,比如位置 \(k\) ,一共有 \(n-1\) 种放法;
第二步,考虑第 \(k\) 个元素,这时有两种情况:
(1)把它放到位置 \(n\) ,那么对于除 \(n\) 以外的 \(n-1\) 个元素,由于第 \(k\) 个元素放到了位置 \(n\) ,所以剩下 \(n-2\) 个元素的错排即可,有 \(D_{n-2}\) 种放法;
(2)第 \(k\) 个元素不放到位置 \(n\) ,这时对于这 \(n-1\) 个元素的错排,有 \(D_{n-1}\) 种放法。
根据乘法和加法法则,综上得到
然后我的理解是这样的,我把问题变成了下面的这样一个问题:
假设现在有 \(n\) 对亲兄妹,\(n\) 个哥哥的编号为 \(1 \sim n\), \(n\) 个妹妹的编号为 \(1 ~ n\),现在你要给这 \(2 \times n\) 个人凑成 \(n\) 对夫妻,要求亲兄妹不能结婚,求方案数?
我们假设 \(n\) 对亲兄妹凑成 \(n\) 对夫妻的方案数为 \(D_n\),那么我们现在可以考虑:
给我们 \(n\) 对亲兄妹,我现在要给编号为 \(n\) 的哥哥找媳妇,那么编号为 \(1 \sim n-1\) 的妹妹都可以当做编号为 \(n\) 的哥哥地媳妇。
假设我选择了编号为 \(k\) 的妹妹和编号为 \(n\) 的哥哥配对,则现在有编号为 \(k\) 的哥哥和编号为 \(n\) 的妹妹落单了。
这个时候我有 \(2\) 种选择:
选择一:编号为 \(k\) 的哥哥和编号为 \(n\) 的妹妹配对。
这种情况下,其它的 \(n-2\) 对还需要错排,所以这种方式下的错排方案是 \(D_{n-2}\)。
情景:\(n\)哥哥和\(k\)妹妹结婚去了,临走之前\(n\)哥哥做了一个媒,将自己的\(n\)妹妹嫁给了\(k\)哥哥。(凑成了 \(2\) 对,剩下 \(n-2\) 对)
选择二:编号为 \(k\) 的哥哥和编号不为 \(n\) 的妹妹配对。
这种情况下,就是编号为 \(k\) 的哥哥不能和编号为 \(n\) 的妹妹配对,那么这个时候就跟他们是亲兄妹是一样的。
情景:\(n\)哥哥临走之前想要将自己的\(n\)妹妹嫁给\(k\)哥哥,但是被拒绝了,然后\(n\)哥哥说:“既然你不想娶她,那么你就跟她认一个兄妹吧”,然后\(k\)哥哥就变成了\(n\)妹妹的哥哥,然后就又变成了 \(n-1\) 对兄妹的错排问题。
两种选择是互斥的,他们汇总之后就是在选择 \(n\) 哥哥和 \(k\) 妹妹的错排总方案:
外加 \(k\) 一共有 \(n-1\) 种选择,根据乘法原理,错排问题的方案数: