标签:
这个我以为是单纯的阶层,但是一直输出都是错误,我就知道可能错了,然后看其他人的代码都就还是有点懵逼,之后自己再细细推敲吧。
#include<iostream>
#include<cstring>
using namespace std;
int list[2001][2001];
int main()
{
memset(list,0,sizeof(list));
int i,j;
for(i=1;i<2000;i++)
{
list[i][0]=1;
list[i][1]=i%1007;
}
for(i=2;i<=2000;i++)
{
for(j=2;j<=i;j++)
{
list[i][j]=(list[i-1][j]%1007+list[i-1][j-1]%1007)%1007;
}
}
int t;
cin>>t;
while(t--)
{
long m,n,k=1;
cin>>m>>n;
if(m>n)
cout<<"0"<<endl;
else
cout<<list[n][m]<<endl;
}
return 0;
}
标签:
原文地址:http://www.cnblogs.com/yintoki/p/5724565.html