# 16. 3Sum Closest【M】【14】

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



Subscribe to see which companies asked this question

class Solution(object):
def threeSumClosest(self, nums, target):

nums.sort()
#print nums
res = 0
minn = 1 << 31
l = len(nums)

for i in xrange(l):
a = 0
b = l - 1 #en(nums) - 1

while a < i and b > i:
#print i,a,b,nums[a],nums[i],nums[b]
s = nums[a] + nums[b] + nums[i]
tmp = abs(s - target)
if minn > tmp:
minn = tmp
res = s
if s > target:
b -= 1
else:
a += 1
return res

'''
nums.sort()
#print nums
minn = 1 << 31
#print minn
res = 0

per = itertools.combinations(nums,3)
for i in per:
#print i
summ = sum(i)#i[0] + i[1] + i[2]
t = abs(summ - target)
if t < minn:
minn = t#abs(summ - target)
res = summ

#for i in xrange(len(nums)):
#    print nums[i]

return res
'''

"""
:type nums: List[int]
:type target: int
:rtype: int
"""

#### LeetCode 16 3Sum Closest(C,C++,Java,Python)

2015-05-09 22:26:02

#### Leetcode #16 3Sum Closest 找3数之和最接近 解题小节

2016-03-19 10:13:59

#### leetcode-java-16. 3Sum Closest

2016-06-07 21:47:12

#### 16. 3Sum Closest Leetcode Python

2015-01-17 10:10:08

#### 15. 3Sum，16. 3Sum Closest，18. 4Sum（最后一个方法重要）重要

2017-02-28 18:38:27

#### 【LeetCode】3Sum Closest 解题报告

2014-10-30 16:57:05

#### 15. 3Sum/16. 3Sum Closest(C++)

2017-06-30 11:06:59

#### 16. 3Sum Closest

2015-06-05 10:14:18

#### 【LeetCode】LeetCode——第16题：3Sum Closest

2016-04-29 21:18:52

#### 3Sum Closest -- LeetCode

2014-02-22 23:22:01