3Sum Closest

来源:互联网 发布:淘宝网电脑版下载 编辑:程序博客网 时间:2024/05/27 20:43
class Solution {public:    int threeSumClosest(vector<int> &num, int target) {size_t len=num.size();        if(len<3) return -1;sort(num.begin(),num.end());int closest=num[0]+num[1]+num[2];size_t aIndex=0,bIndex,cIndex;while(aIndex<len-2){bIndex=aIndex+1,cIndex=len-1;while(bIndex < cIndex){int tmp=num[aIndex]+num[bIndex]+num[cIndex];if(abs(tmp-target)<abs(closest-target)){closest=tmp;}if(tmp==target){return target;}else if(tmp>target){cIndex--;}else{bIndex++;}}aIndex++;}return closest;    }};

0 0
原创粉丝点击