class Solution {
public:
int threeSumClosest(vector<int> &num, int target) {
sort(num.begin(), num.end());
int ret;
bool first = true;
for (int i = 0; i < num.size(); i++)
{
int start = i + 1;
int end = num.size() - 1;
while (start < end)
{
int sum = num[i] + num[start] + num[end];
if (first)
{
ret = sum;
first = false;
}
else
{
if (abs(sum - target)<abs(ret-target))
{
ret = sum;
}
}
if (ret == target)
{
return ret;
}
if (sum>target)
{
end--;
}
else
{
start++;
}
}
}
return ret;
}
};
【LeetCode】3Sum Closest
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.