比赛 |
20110723 |
评测结果 |
WAWWTTTTTT |
题目名称 |
排列 |
最终得分 |
10 |
用户昵称 |
kaaala |
运行时间 |
0.000 s |
代码语言 |
C++ |
内存使用 |
0.00 MiB |
提交时间 |
2011-07-23 10:21:00 |
显示代码纯文本
#include<iostream>
#include<fstream>
#include<cstdlib>
#include<cmath>
#include<cstring>
#include<string>
#include<algorithm>
using namespace std;
long long ans;
int n,k,a[101];
template<class type>
void permutation(type *R,int K,int N)
{
int i,j;
if (K==N)
{
j=0;
for(i=1;i<N;++i)
{
if(R[i]<R[i+1])
j++;
if(j>k)
break;
}
if(j==k)
ans++;
}
else
for(i=K;i<=N;++i)
{
swap(R[K],R[i]);
permutation(R,K+1,N);
swap(R[K],R[i]);
}
}
int main()
{
int i;
ifstream fin("permutation.in");
ofstream fout("permutation.out");
while(!fin.eof())
{
fin>>n>>k;
for(i=1;i<=n;i++)
a[i]=i;
permutation(a,1,n);
fout<<ans%2007<<endl;
}
fin.close();
fout.close();
return 0;
}