uva11481

此题纠结了我一段时间了。今天在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两个元素……

就这样就可以了。哎。。。太弱菜了。。。

你可能感兴趣的:(uva11481)