#Subset Sum Practice
void funct(int ind,int sum,vector<int> arr, vector<int>&ans,int n)
{
if(ind==n)
{
ans.push_back(sum);
return;
}
sum+=arr[ind];
funct(ind+1,sum,arr,ans,n);
sum-=arr[ind];
funct(ind+1,sum,arr,ans,n);
}
vector<int> subsetSums(vector<int> arr, int n)
{
vector<int> ans;
funct(0,0,arr,ans,n);
//ans.push_back(0);
sort(ans.begin(),ans.end());
//ans.erase(unique(ans.begin(),ans.end()),ans.end());
return ans;