题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2049
//C++代码
#include<iostream>
#include<cstdio>
using namespace std;
int main(){
int C,n,m,k,i;
__int64 t,f[21];
f[1]=0,f[2]=1;
for(i=3;i<=20;i++) f[i]=(i-1)*(f[i-1]+f[i-2]);
cin>>C;
while(C--){
cin>>n>>m;
t=1;
k=n-m;
for(i=1;i<=n-m;i++) t=t*(n+1-i)/i;
printf("%I64d\n",t*f[m]);
}
return 0;
}