Computer Science/Coding Test
LeetCode: 16. 3Sum Closest
focalpoint
2021. 8. 21. 14:35
class Solution:
def threeSumClosest(self, nums: List[int], target: int) -> int:
ret = int(1e9)
nums.sort()
for i in range(0, len(nums)-2):
l = i + 1
r = len(nums) - 1
while l < r:
now_sum = nums[i] + nums[l] + nums[r]
if now_sum == target:
return target
elif now_sum < target:
if abs(now_sum - target) < abs(ret - target):
ret = now_sum
l += 1
else:
if abs(now_sum - target) < abs(ret - target):
ret = now_sum
r -= 1
return ret