错位排列及有关例题

Posted qixingzhi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了错位排列及有关例题相关的知识,希望对你有一定的参考价值。

求n个数(不相同)错位排列的个数。

何为错位排列?定义如下:对于n的一个排列a1,a2,a3...an。

如何求解错位排列?

考虑动态规划的解法。

前i个元素时如何进行状态转移?

(一)首先由于要求错位排列,第i个元素肯定不会放在自己的位置上,故第i个元素的位置有i-1种选择。

(二)对于剩下的i-1个元素,选择其中的一个元素k。这时候k有两种选择:

  1. 放在第i个元素的位置上,宏观上相当于i与k的位置互换了。而剩下的i-2个元素依然要求错位排列。

  2. 不放在第i个元素的位置上,则相当于剩下的i-1个元素全部进行错位排列。

综上,我们可以得到:f[i] = (i-1) * ( f[i-1] + f[i-2] );

(F_{n} = F_{n-1} + F_{n-2})

 

以上是关于错位排列及有关例题的主要内容,如果未能解决你的问题,请参考以下文章

「斜率优化」解析及例题

一道数学概率问题

错位排列

有关字符串例题

一个有关统计学中t检验的问题

有关int范围的例题(算法竞赛入门经典)