3Sum Closest
int threeSumClosest(vector<int> &num, int target) { // Note: The Solution object is instantiated only once and is reused by each test case. sort(num.begin(),num.end()); int i,j,k; int sum,cursum; int curDiff = INT_MAX; for(i=0;i<num.size()-2;i++) { j = i+1; k = num.size()-1; while(j<k) { cursum = num[i] + num[j] + num[k]; if(cursum==target) return cursum; if(abs(cursum-target)<curDiff) { sum = cursum; curDiff = abs(cursum-target); } if(cursum>target) k--; else j++; } } return sum; }