太菜了,一年后突然明白什么意思
首先令 \(a[n]==i\)
- 若 \(a[i]== n\) ,剩下 \(n-2\) 个数构成错排
- 若 \(a[i]!=n\),可以将 \(n\) 看成 \(i\) (错排问题要求 \(a[i]!=i\) ,反正都是 \(!=\) 某个数,在这里是等价的),前 \(n-1\) 个数构成错拍
故 \(dp[i]=(n-1)*(dp[i-1]+dp[i-2])\)
一年后,我终于懂了错排
原文:https://www.cnblogs.com/White-star/p/11837957.html