|
楼主 |
发表于 2023-11-11 15:31:53
|
显示全部楼层
#include<iostream>
using namespace std;
int arr[100];
int n,m;
void pfn(){
for(int i=1;arr[i];i++){
cout<<arr[i]<<' ';
}
}
void dfs(int sum,int wei,int snum){
if(sum==0&&wei==(m+1)){
pfn();
cout<<'\n';
}
if(sum>0&&wei<=m){
for(int i=snum;i<=n;i++){
arr[wei]=i;
dfs(sum-i,wei+1,i+1);
}
}
}
int main(){
cin>>n>>m;
dfs(n,1,1);
return 0;
}
|
|