国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

LeetCode 16. 3Sum Closest

2019-11-08 18:30:44
字體:
供稿:網(wǎng)友

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.

    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).answer:

class Solution {public:    int threeSumClosest(vector<int>& nums, int target) {        int gap = INT_MAX;        int flag = 1;        int sum = 0;        sort(nums.begin(), nums.end());        for(int i = 0; i < nums.size(); i ++){            int start = i + 1;            int end = nums.size() - 1;            while(start < end){                sum = nums[i] + nums[start] + nums[end];                if(sum < target){                    start ++;                    if(target - sum < gap){                        gap = target - sum;                        flag = -1;                    }                }                else if(sum > target){                    end --;                    if(sum - target < gap){                        gap = sum - target;                        flag = 1;                    }                }                else{                    return target;                }            }        }        return target + flag * gap;    }};


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 甘泉县| 卢龙县| 双江| 西林县| 宁波市| 霸州市| 儋州市| 始兴县| 山西省| 栾城县| 龙州县| 新津县| 汝阳县| 沈丘县| 滁州市| 莱州市| 花莲市| 理塘县| 竹山县| 北宁市| 河西区| 宜州市| 隆昌县| 勃利县| 玉门市| 柏乡县| 柳河县| 南安市| 赤水市| 泰安市| 海林市| 莆田市| 徐水县| 治多县| 武平县| 灵台县| 晋江市| 神农架林区| 黔西| 武安市| 丁青县|