!n 错排

错位排列(Derangement)的定义

错位排列(Derangement)是指一个排列中,没有任何一个元素出现在其原始位置的排列方式。例如,对于集合 ( {1, 2, 3} ),其所有排列为:

  • ( (1, 2, 3) )(不是错位排列,因为所有元素都在原位)
  • ( (1, 3, 2) )(不是错位排列,因为 1 在原位)
  • ( (2, 1, 3) )(不是错位排列,因为 3 在原位)
  • ( (2, 3, 1) )(是错位排列)
  • ( (3, 1, 2) )(是错位排列)
  • ( (3, 2, 1) )(不是错位排列,因为 2 在原位)

因此,( {1, 2, 3} ) 的错位排列数是 2

错位排列数的数学表示

错位排列数通常记作 ( !n ) 或 ( D_n ),表示 ( n ) 个元素的错位排列数量。其数学性质如下:

1. 递推关系

错位排列数满足以下递推关系:
[
!n = (n - 1) \times (!(n - 1) + !(n - 2))
]
初始条件

  • ( !0 = 1 )(空排列视为一个有效的错位排列)
  • ( !1 = 0 )(单个元素无法错位排列)

递推解释

  • 假设第 ( n ) 个元素不能放在第 ( n ) 个位置,那么它可以放在 ( n-1 ) 个其他位置。
  • 如果第 ( n ) 个元素和第 ( k ) 个元素交换位置,剩下的 ( n-2 ) 个元素需要错位排列(( !(n-2) ) 种方式)。
  • 如果第 ( n ) 个元素放在第 ( k ) 个位置,但第 ( k ) 个元素不能放在第 ( n ) 个位置,则剩下的 ( n-1 ) 个元素需要错位排列(( !(n-1) ) 种方式)。

2. 通项公式

错位排列数可以用容斥原理计算:
[
!n = n! \left( 1 - \frac{1}{1!} + \frac{1}{2!} - \frac{1}{3!} + \dots + (-1)^n \frac{1}{n!} \right)
]
或者:
[
!n = \left\lfloor \frac{n!}{e} + \frac{1}{2} \right\rfloor
]
其中 ( e ) 是自然对数的底数(约 2.71828),( \lfloor \cdot \rfloor ) 表示向下取整。

3. 与 ( \frac{n!}{e} ) 的关系

由于:
[
!n \approx \frac{n!}{e}
]
并且:
[
!n = \left\lfloor \frac{n!}{e} + \frac{1}{2} \right\rfloor
]
因此,错位排列数 ( !n ) 是最接近 ( \frac{n!}{e} 的整数

错位排列数的性质

  1. 增长速度

    • 错位排列数 ( !n ) 的增长速度与 ( n! ) 相同,但略小(约为 ( \frac{n!}{e} ))。
    • 当 ( n \to \infty ),( \frac{!n}{n!} \to \frac{1}{e} \approx 0.367879 )。
  2. 模运算性质

    • 由于 ( !n ) 通常非常大,计算时通常需要取模(如本题的 998244353)。
    • 递推关系 ( !n = (n - 1) \times (!(n - 1) + !(n - 2)) \mod P ) 可以高效计算。
  3. 与排列数的关系

    • 错位排列数是排列数的子集,即 ( !n \leq n! )。
    • 当 ( n \geq 1 ),( !n = n! - \text{至少有一个元素在原位的排列数} )。

错位排列的应用

  1. 概率问题

    • 信封问题(Derangement Problem)中,假设 ( n ) 封信随机放入 ( n ) 个信封,求所有信都放错的概率。这个概率是 ( \frac{!n}{n!} \approx \frac{1}{e} )。
  2. 密码学

    • 某些加密算法需要构造错位排列,以确保没有元素保持不变。
  3. 组合数学

    • 错位排列是排列计数的重要例子,常用于研究限制性排列

示例

计算 ( !4 ):

  • ( !0 = 1 )
  • ( !1 = 0 )
  • ( !2 = (2 - 1) \times (!1 + !0) = 1 \times (0 + 1) = 1 )
  • ( !3 = (3 - 1) \times (!2 + !1) = 2 \times (1 + 0) = 2 )
  • ( !4 = (4 - 1) \times (!3 + !2) = 3 \times (2 + 1) = 9 )

验证:

  • 4! = 24
  • ( \frac{24}{e} \approx 8.829 )
  • ( \left\lfloor 8.829 + 0.5 \right\rfloor = 9 ),与 ( !4 = 9 ) 一致。

总结

  • 错位排列数 ( !n ) 是排列中没有任何元素在原始位置的排列方式数。
  • 递推关系:( !n = (n - 1) \times (!(n - 1) + !(n - 2)) )
  • 通项公式:( !n = n! \sum_{k=0}^n \frac{(-1)^k}{k!} )
  • 近似公式:( !n \approx \frac{n!}{e} ),且 ( !n = \left\lfloor \frac{n!}{e} + \frac{1}{2} \right\rfloor )
  • 应用:信封问题、密码学、组合数学等。

本题的解法正是利用递推关系计算 ( !n \mod 998244353 ),避免了直接计算 ( n! ) 的不可行性。

posted on 2025-04-10 21:45  下头小美  阅读(140)  评论(0)    收藏  举报