题解:
#include<iostream>
using namespace std;
int ret=0,m_n;
void p(int n,double k,int j){
if(k==1){
if(n>=j){
ret++;
return;
}else{
return;
}
}
for(int i=j;i<=m_n/k;i++){
p(n-i,k-1,i);
}
return;
}
using namespace std;
int ret=0,m_n;
void p(int n,double k,int j){
if(k==1){
if(n>=j){
ret++;
return;
}else{
return;
}
}
for(int i=j;i<=m_n/k;i++){
p(n-i,k-1,i);
}
return;
}
int main()
{
double k;
cin>>m_n>>k;
p(m_n,k,1);
cout<<ret<<endl;
return 0;
}
{
double k;
cin>>m_n>>k;
p(m_n,k,1);
cout<<ret<<endl;
return 0;
}
来源:https://www.cnblogs.com/lijiahui-123/p/12302660.html