X DAYS

:

HOUR

:

MINS

:

SEC

Copied to Clipboard
Three Sum Closest
Easy Accuracy: 40.62% Submissions: 21310 Points: 2

Given an array Arr of N numbers and another number target, find three integers in the array such that the sum is closest to target. Return the sum of the three integers.

Example 1:

Input:
N = 6, target = 2
A[] = {-7,9,8,3,1,1}
Output: 2
Explanation: There is one triplet with sum
2 in the array. Triplet elements are -7,8,
1 whose sum is 2.

Example 2:

Input:
N = 4, target = 13
A[] = {5,2,7,5}
Output: 14
Explanation: There is one triplet with sum
12 and other with sum 14 in the array.
Triplet elements are 5, 2, 5 and 2, 7, 5
respectively. Since abs(13-12) ==
abs(13-14) maximum triplet sum will be
preferred i.e 14.

Complete threeSumClosest() function and return the expected answer.

NOTE: If their exists more than one answer then return the maximum sum.

Expected Time Complexity: O(N*N).
Expected Auxiliary Space: O(1).

Constraints:
3 ≤ N ≤ 103
-105 ≤ A[i] ≤ 105
1 ≤ target ≤ 105

We are replacing the old Disqus forum with the new Discussions section given below.

Editorial

We strongly recommend solving this problem on your own before viewing its editorial. Do you still want to view the editorial?

My Submissions:  