题目在这
我的Code
#include<bits/stdc++.h>
using namespace std;
int n,k,v=0;
int a[7]={1};
void dfs(int m,int h)
{ if(h==k+1&&m==0)
{ v++;
}
for(int i=a[h-1];i*(k-h+1)<=m;i++)
{ a[h]=i;
dfs(m-i,h+1);
a[h]=0;
}
}
int main()
{ cin>>n>>k;
dfs(n,1);
cout<<v<<endl;
return 0;
}