#include <vector> #include <iostream> using namespace std; void dfs(int n,int sum,int s,vector<int>& res){     if(sum == n){         if(res.size()<=1){             return;         }         for_each(res.begin(),res.end(),[](int val){             cout<<val<<" ";         });         cout<<endl;         return;     }     for(int i = s;i<=n-sum;i++){         res.push_back(i);         dfs(n,sum+i,i,res);         res.pop_back();     } } int main() {     vector<int> v;     int n;     scanf("%d",&n);     dfs(n,0,1,v); }
点赞 评论

相关推荐

牛客网
牛客网在线编程
牛客网题解
牛客企业服务