fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. void find(int n, int cursum, vector<int> &v, int &ans){
  5. if(cursum == n){
  6. int tt = 1;
  7. for(auto i : v){
  8. // cout << i << " ";
  9. tt *= i;
  10. }
  11. // cout << "\n";
  12. ans += tt;
  13. return;
  14. }
  15. for(int i = 1; i < n; ++i){
  16. if(cursum + i <= n){
  17. v.push_back(i);
  18. find(n, cursum + i, v, ans);
  19. v.pop_back();
  20. }
  21. }
  22. }
  23.  
  24. int main() {
  25.  
  26. int n = 15;
  27. for(int i = 1; i <= n; ++i){
  28. vector<int> v; int ans = 0;
  29. find(i, 0, v, ans);
  30. cout << ans << " ";
  31. }
  32. }
Success #stdin #stdout 0s 4244KB
stdin
Standard input is empty
stdout
0 1 5 17 50 138 370 979 2575 6755 17700 46356 121380 317797 832025