此题纠结了我一段时间了。今天在acseed的提示下我ac了。。
首先题目很容易就可以想到首先算出前面C(m,k)种方案。那么就要考虑其他的n-k个位置都要不在其位置上。
那么我首先想到了错排。但是不知道为什么如果这么算的话是错误的。以5,3,2为例,答案是12,但是用错排算却是6错的。我就不知道为什么了。
求大神指教我上面的想法为什么错了啊。
然后被提醒说是容斥原理,首先第一步还是C(m,k)那么呢第二部我们可想而知在前m个里面还剩下m-k个元素和一共n-k个元素剩余。
那么当(n-k)!的时候由于里面会有m-k个元素在其本身位置上所以需要用容斥原理-去。即在算有1个元素恰好重复那么减去,加上2两个元素……
就这样就可以了。哎。。。太弱菜了。。。