class Solution {
public:
int threeSumClosest(vector<int>& nums, int target) {
sort(nums.begin(),nums.end());
if(nums.size()<3) return {};
int closest=target+10000000;
for(int i=0;i<nums.size()-2;i++)
{
int fix=nums[i];
if(fix>target&&abs(fix+nums[i+1]+nums[i+2]-target)>abs(closest-target)) break;
for(int j=i+1;j<nums.size()-1;j++)
{
for(int k=j+1;k<nums.size();k++)
{
int temp=abs(target-fix-nums[j]-nums[k]);
if(temp<abs(closest-target))
closest=fix+nums[j]+nums[k];
}
}
}
return closest;
}
};
day10
最新推荐文章于 2022-04-21 10:49:06 发布