叶老师说过,记忆化搜索。
#include<stdio.h>
#include<iostream>
using namespace std;
const int MAX_N = 201;
int f[MAX_N][MAX_N];
int work(int n,int k)
{
if (f[n][k]) return f[n][k];
if (n<k)return 0;
if (n==k) return 1;
if (k==1) return 1;
return f[n][k]=work(n-1,k-1)+work(n-k,k);
}
int main()
{
int n,k;
cin>>n>>k;
cout<<work(n,k);
return 0;
}