leetcode 3Sum Closest
2015-04-14 21:58
375 查看
代码:
#include<iostream> #include<algorithm> #include<vector> using namespace std; int threeSumClosest(vector<int> &num, int target) { sort(num.begin(),num.end()); int L = num.size(); int min = INT_MAX; int beauty; for (int i = 0; i < L-2; i++) { int l = i + 1; int r = L - 1; int sum = num[l]+num[r]+num[i]; while (l < r) { sum = num[l] + num[r] +num[i]; if (abs(target - sum) < min) { min = abs(target - sum); beauty = sum; } if (sum < target) { l++; } else if (sum > target) { r--; } else { return sum; } } } return beauty; } int main() { vector<int> S = { 87, 6, -100, -19, 10, -8, -58, 56, 14, -1, -42, -45, -17, 10, 20, -4, 13, -17, 0, 11, -44, 65, 74, -48, 30, -91, 13, -53, 76, -69, -19, -69, 16, 78, -56, 27, 41, 67, -79, -2, 30, -13, -60, 39, 95, 64, -12, 45, -52, 45, -44, 73, 97, 100, -19, -16, -26, 58, -61, 53, 70, 1, -83, 11, -35, -7, 61, 30, 17, 98, 29, 52, 75, -73, -73, -23, -75, 91, 3, -57, 91, 50, 42, 74, -7, 62, 17, -91, 55, 94, -21, -36, 73, 19, -61, -82, 73, 1, -10, -40, 11, 54, -81, 20, 40, -29, 96, 89, 57, 10, -16, -34, -56, 69, 76, 49, 76, 82, 80, 58, -47, 12, 17, 77, -75, -24, 11, -45, 60, 65, 55, -89, 49, -19, 4 }; cout << threeSumClosest(S,-275) << endl; return 0; }
相关文章推荐
- Leetcode 3Sum Closest
- LeetCode 16. 3Sum Closest
- 【Leetcode】之3Sum Closest
- 【LeetCode】3Sum Closest
- leetcode--3Sum Closest
- leetcode-16-3Sum Closest
- [LeetCode] 16. 3Sum Closest
- [Leetcode] 3Sum Closest
- LeetCode 3Sum Closest
- LeetCode 16. 3Sum Closest
- leetcode-3Sum Closest
- LeetCode:3Sum Closest
- LeetCode:16. 3Sum Closest
- 【leetcode】_3sum_closest
- LeetCode -- 3Sum Closest
- Leetcode 16. 3Sum Closest
- 【Leetcode】【Medium】3Sum Closest
- LeetCode | 3Sum Closest
- [leetcode] 3Sum Closest
- LeetCode 16 3Sum Closest