Subscribe Us

Responsive Advertisement

Advertisement

Subset sum generation using backtraking in c++

 Subset sum generation using backtraking in c++

by Ujjal Roy




#include<bits/stdc++.h>

using namespace std;

#define ll long long int

vector<vector<ll>>subsets;

void func(ll arr[],ll indx,vector<ll>&vec,ll length)

{

    if(indx==length)

    {

        subsets.push_back(vec);

        return;


    }

    func(arr,indx+1,vec,length);

    vec.push_back(arr[indx]);

    func(arr,indx+1,vec,length);

    vec.pop_back();




}

int main()

{

     ll n;

     cin>>n;

     ll arr[n];

     for(ll i=0;i<n;i++)cin>>arr[i];

     vector<ll>vec;

     func(arr,(ll)0,vec,n);

      for(ll i=0;i<subsets.size();i++)

      {

          for(auto u:subsets[i])

          {

              cout<<u<<" ";

          }

          cout<<endl;


      }

    return 0;

}


Post a Comment

0 Comments