3 Sum Closet

来源:互联网 发布:windows远程桌面rdp 编辑:程序博客网 时间:2024/05/16 02:31

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.

class Solution:    # @return an integer    def threeSumClosest(self, num, target):        num.sort()        minDiff = 9999999        res = 0        for i in range(len(num)):            left = i + 1; right = len(num) - 1            while left < right:                sum = num[i] + num[left] + num[right]                 diff = abs(sum - target)                 if diff< minDiff : minDiff = diff ; res = sum                if sum == target : return sum                elif  sum < target : left += 1                else : right -= 1        return res                                


0 0
原创粉丝点击