比赛 HAOI2009 模拟试题3 评测结果 AAAAAAAAAA
题目名称 诸侯安置 最终得分 100
用户昵称 Czb。 运行时间 0.000 s
代码语言 C++ 内存使用 0.00 MiB
提交时间 2012-06-28 15:59:20
显示代码纯文本
#include<stdio.h>

int n,k,f[200][200];

int main()
{
	freopen("empire.in","r",stdin);
	freopen("empire.out","w",stdout);
	int i,j;
	scanf("%d%d",&n,&k);
	n=n*2-1;f[0][0]=1;
	if(k>n)
	{
		printf("0\n");
		return 0;
	}
	for(i=1;i<=n;i++)
	{
		f[i][0]=1;
		for(j=1;j<=k&&j<=i;j++)
		{
			if(i&1)
				f[i][j]=f[i-1][j]+f[i-1][j-1]*(i-j+1);
			else
				f[i][j]=f[i-1][j]+f[i-1][j-1]*(i-j);
			f[i][j]%=504;
		}
	}
	printf("%d\n",f[n][k]);
	return 0;
}