Subset Sums Practice
void find(int ind,vector<vector<int>> &ans,vector<int>& s,vector<int>& nums)
{
// if(s.size()==0)
ans.push_back(s);
if(ind==nums.size())
return;
for(int i=ind;i<nums.size();i++)
{
if(i>ind && nums[i]==nums[i-1])
break;
//continue;
s.push_back(nums[i]);
find(i+1,ans,s,nums);
s.pop_back();
}
}
public:
vector<vector<int>> printUniqueSubsets(vector<int>& nums)
{
vector<int> s;
vector<vector<int>> ans;
sort(nums.begin(),nums.end());
find(0,ans,s,nums);
return ans;
}