这几天都做到了递推题,而且都用到了错排公式,所以在此记一下(不然我脑子里根本记不住,蠢哭...)
以HDU 2048为例,请看题:
em...由于本人一点也不擅长递推题,所以直接把别人的分析抄上来吧 ....(侵权即删)
若有n张票,则其所有的排列一共有 = n! 种排列方式。即所求问题的分母是n!
现在的问题就是n张票的错排方式有多少种?
1.首先我们考虑如果n-1个人拿的都不是自己的票,即n-1个人满足错排,现在又来一个人,他手里拿的是自己的票。
则他只要把自己的票与其他n-1个人中的任意一个交换,就可以满足n个人的错排。这里有n-1种方法。
2.另外,我们考虑,如果前n-1个人不满足错排,而第n个人把自己的票与其中一个人交换后恰好满足错排(这说明前n-1个人中只有一个人拿着自己的票)。
这种情况发生在原先n-1人中,n-2个人满足错排,有且仅有一个人拿的是自己的票,而第n个人恰好与他交换了,这时候就满足了错排。因为前n-1个人中,每个人