class Solution {
public:
    vector<vector<int> > threeSum(vector<int> &num) {
        vector<int> ve(3,0);
        set<vector<int> > s;
        if(num.size()<3) return {};
        int i,j,k;
        for(i=0;i<num.size();i++){
            for(j=i+1;j<num.size();j++){
                for(k=j+1;k<num.size();k++){
                    if(num[i]+num[j]+num[k]==0){
                        ve[0]=num[i],ve[1]=num[j],ve[2]=num[k];
                        sort(ve.begin(),ve.end());
                        s.insert(ve);
                    }
                }
            }
        }
        return {s.begin(),s.end()};
    }
};