#include <bits/stdc++.h>
using namespace std;
void print(vector v)
{
for(int i=0;i<v.size();i++)
{
cout<<v[i]<<" ";
}
cout<<endl;
}
int countSubsets(vector v,int i,int removed,int temp,int target)
{
if(i==3)
{
if(temp==target)
{
return 1;
}
}
print(v);
vector::iterator it=v.begin()+i-removed;
cout<<*it<<endl;
int sum1 = temp+ *it;
int count1=countSubsets(v,i+1,removed,sum1,target);
v.erase(it);
int count2=countSubsets(v,i+1,removed+1,temp,target);
return count1+count2;
}
int main()
{
vector v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
cout<<countSubsets(v,0,0,0,3);
return 0;
}