Problem2082--错误的排列方案

2082: 错误的排列方案

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 107  Solved: 10
[Status] [Submit] [Creator:]

Description

对于一个大小为 n 的数列,如果它恰好由 1 到 n 范围内的 n 个整数组成,则称这个数列为一个 n 的排列。

对于一个排列 p1, p2, ……, pn 来说,如果其中恰好有 k 个元素 pi 满足 pi ≠ i,则我们成这个排列是 “k-错排” 的。

求:有多少大小为 n 的排列是 “k-错排” 的?

Input

输入共一行,包含两个整数 n 和 k,以一个空格分隔(1 ≤ k ≤ n ≤ 1000)。

Output

输出一个整数,表示 “k-错排” 的排列方案数。由于这个数字可能很大,所以只需要输出方案数对 10007 取模的结果即可。

Sample Input Copy

【样例输入1】
3 2
【样例输出1】
3
【样例输入2】
4 4
【样例输出2】
9

HINT

【样例解释】
样例1:3 的排列中共有 3 种 “2-错排”的,它们是:
· 1,3,2
· 2,1,3
· 3,2,1

样例2:4 的排列中共有 9 种 “4-错排”的,它们是:
· 2,1,4,3
· 2,3,4,1
· 2,4,1,3
· 3,1,4,2
· 3,4,1,2
· 3,4,2,1
· 4,1,2,3
· 4,3,1,2
· 4,3,2,1

【数据规模与约定】
对于 30% 的数据,n ≤ 10;
对于 60% 的数据,n ≤ 100;
对于 100% 的数据,1 ≤ k ≤ n ≤ 1000。

Source/Category