/*
错排 : 一个1到n的排列a, 满足a[i] != i 的排列有多少种
令 f(n) 表示长度为n的排列, 错排数有f(n)种
结论 :f(n) = (n - 1)(f(n - 1) + f(n - 2))
特殊的 f(1) = 0, f(2) = 1
证明:
任选一个数x, 有n - 1种位置的选择
对于第二个数y, 若x和y互占位置, 则方案数有f(n - 2)种
若不互占位置, y 不占 x 的位置, 则y还剩n - 2个位置
对于其他数z, n - 1个位置中也可以选n - 2个位置, 所以方案数有f(n - 1)种
所以总共方案数有(n - 1)(f(n - 1) + f(n - 2))种
*/