class Solution {
public:
int threeSumClosest(vector<int>& nums, int target) {
int res;
int m=1500;
sort(nums.begin(),nums.end());
for(int i=0;i<nums.size();i++){
int left=i+1;
int right=nums.size()-1;
//if(nums[i]>target) return res;
while(left<right){
int temp=nums[i]+nums[left]+nums[right];
if(abs(temp-target)<abs(m-target)) m=temp;
// while(left<right&&nums[left]==nums[left+1]) left++;
// while(left<right&&nums[right]==nums[right-1]) right--;
if(temp>target){
right--;
}
else if(temp<target){
left++;
}
else return m;
}
}
return m;
}
};