3190753_ac_0ms_464k.c

来自「北大大牛代码 1240道题的原代码 超级权威」· C语言 代码 · 共 28 行

C
28 行
字号
#include <stdio.h>
#include <string.h>

__int64 c[201][201];

__int64 f(int m,int n)
{
	if(m < 0)   return 0;
	if(c[m][n]!=-1)
		return c[m][n];
	if(m == 0) return c[m][n] = 1;
	if(n == 0)  return c[m][n] = 0;
	return c[m][n] = f(m - n, n) + f(m, n - 1);
}

int main()
{
	int n, k;

	memset(c,-1,sizeof(c));
	while(scanf("%d%d",&n,&k)==2)
	{
		if(n==0&&k==0)
			break;
		printf("%I64d\n",f(n-k,k));
	}
	return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?