fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. const long long MaxN = 25;
  4. long long n;
  5. long long a[MaxN];
  6. void backtrack(long long pos, long long sum)
  7. {
  8. if(sum==n)
  9. {
  10. for (long long i=1; i<=pos-1; i++)
  11. {
  12. cout << a[i] << " ";
  13. }
  14. cout << "\n";
  15. return ;
  16. }
  17. for (long long i=1; i<=n-sum; i++)
  18. {
  19.  
  20. a[pos]=i;
  21. backtrack(pos+1,sum+i);
  22. }
  23. }
  24. int main()
  25. {
  26. ios_base::sync_with_stdio(0);
  27. cin.tie(0);
  28. cin >> n;
  29. backtrack(1,0);
  30. }
  31.  
Success #stdin #stdout 0s 5320KB
stdin
Standard input is empty
stdout