Files
2026-02-11 14:56:22 +05:30

26 lines
838 B
C++

class Solution{
public:
vector<vector<int>> ThreeSum(vector<int> &nums){
vector<vector<int>> res;
sort(nums.begin(), nums.end());
int n = nums.size();
for(int i =0;i<n;i++){
if(nums[i]>0) break;
if(i>0 && nums[i]==nums[i-1]) continue;
int j = i+1;
int k = nums.size() -1;
while(j<k){
int total = nums[i]+nums[j]+nums[k];
if(total>0) k--;
else if(total<0) j++;
else{
res.push_back({nums[i], nums[j], nums[k]});
j++;
while(j<k && nums[j] == nums[j-1]) j++;
}
}
}
return res;
}
};