3Sum Closest
2015-08-28 10:28
134 查看
Given an array S of n integers, find three integers in S such that the sum is closest to a given number, target. Return the sum of the three integers. You may assume that each input would have
exactly one solution.
思路:同3Sum题目,使用三个指针。
[/code]
exactly one solution.
思路:同3Sum题目,使用三个指针。
For example, given array S = {-1 2 1 -4}, and target = 1. The sum that is closest to the target is 2. (-1 + 2 + 1 = 2).
#include <stdlib.h> #include <algorithm> class Solution { public: int threeSumClosest(vector<int>& nums, int target) { if(nums.size() < 3) return 0; int result = nums[0] + nums[1] + nums[2]; sort(nums.begin(), nums.end()); for(int i = 0 ; i <= nums.size()-3; i++) { int j = i + 1; int k = nums.size() - 1; while(j < k){ int sum = nums[i] + nums[j] + nums[k]; if(sum > target){ k--; } else if(sum < target){ j++; }else return target; //update the sum. if(abs(sum - target) < abs(result - target)){ result = sum; } } } return result; } };
[/code]
相关文章推荐
- 在Ajax中什么时候用GET什么时候用POST?
- springMVC文件上传
- 队列和数组
- IPV4与IPV6地址
- Xcode: Auto property synthesis will not synthesize property 解决
- bzoj4028[HEOI2015]公约数数列
- PHP 单引号与双引号的区别
- Poj.2826 An Easy Problem?![【计算几何-线段】 2015/08/28
- 从Eclispe转Android Studio需要知道的快捷键(AS如何修改快捷键)
- LeetCode题解:Merge Sorted Array
- POJ 3046 Ant Counting
- 堆表修改内幕
- WSGI简介
- hdu1754-I Hate It(线段树)
- spring mvc
- 买点已现!阅兵前线指挥车同款电视降价大促
- 找出数组中重复的数
- win10平板模式中的的触摸键盘怎么打开?
- ffmpeg_struct: AVSampleFormat
- jQuery EasyUI和PHP实现数据的CURD操作