class Solution {
public:
int threeSumClosest(vector<int> &num, int target) {
int mingaps,gaps;
sort(num.begin(),num.end());
mingaps=num[0]+num[1]+num[2]-target;
if(mingaps==0) return target;
int i,j,k;
for(i=0;i<num.size()-1;i++)
{
j=i+1;
k=num.size()-1;
while(j<k)
{
gaps=num[i]+num[j]+num[k]-target;
if(gaps==0) return target;
if(abs(gaps)<abs(mingaps))
{
mingaps=gaps;
}
if(gaps<0) j++;
else k--;
}
}
return target+mingaps;
}
};
leetcode:3Sum Closest
最新推荐文章于 2020-02-04 11:37:06 发布