[Leetcode]3Sum Closest
2014-10-08 10:40
351 查看
//第一个数枚举,第二第三个数分别从第一个数的后面和最后夹逼
class Solution {
public:
int threeSumClosest(vector<int> &num, int target) {
sort(num.begin(),num.end());
int min=INT_MAX;
int res;
for(int i=0;i<num.size()-2;i++)
{
int l=i+1;
int r=num.size()-1;
while(l<r)
{
int t = num[i]+num[l]+num[r];
int gap = abs(target-t);
if(gap==0)
return t;
else if(gap<min)
{
min = gap;
res = t;
}
if(target<t)
r--;
else if(target>t)
l++;
}
}
return res;
}
};
class Solution {
public:
int threeSumClosest(vector<int> &num, int target) {
sort(num.begin(),num.end());
int min=INT_MAX;
int res;
for(int i=0;i<num.size()-2;i++)
{
int l=i+1;
int r=num.size()-1;
while(l<r)
{
int t = num[i]+num[l]+num[r];
int gap = abs(target-t);
if(gap==0)
return t;
else if(gap<min)
{
min = gap;
res = t;
}
if(target<t)
r--;
else if(target>t)
l++;
}
}
return res;
}
};
相关文章推荐
- LeetCode 3Sum&&3Sum Closest&&4Sum
- 【C++】【LeetCode】15. 3Sum & 16. 3Sum Closest & 18. 4Sum
- LeetCode 3Sum Closest
- LeetCode——3Sum Closest
- [Leetcode]_16 3Sum Closest
- leetcode - 3Sum Closest
- 【小熊刷题】3Sum Closest <Leetcode 16, Java>
- [LeetCode] 3Sum Closest
- LeetCode 3Sum Closest
- leetcode 16. 3Sum Closest
- 【JAVA、C++】LeetCode 016 3Sum Closest
- LeetCode 16. 3Sum Closest
- leetcode: 3Sum Closest
- 3Sum Closest[leetcode]
- LeetCode 3Sum Closest
- leetcode:3Sum Closest
- [Leetcode 16, Medium] 3Sum Closest
- 【LeetCode】16. 3Sum Closest
- LeetCode: 3SumClosest
- [leetcode刷题系列]3Sum Closest