Welcome to the daily solving of our PROBLEM OF THE DAY with Siddharth Hazra. We will discuss the entire problem step-by-step and work towards developing an optimized solution. This will not only help you brush up on your concepts of Searching but also build up problem-solving skills.
In this problem, we are given a sorted array arr[] of positive integers. The task is to find the closest value in the array to the given number k. The array may contain duplicate values.
Note: If the difference with k is the same for two values in the array return the greater value.
Example :
Input:
n = 4
k = 4
arr[] = {1, 3, 6, 7}
Output:
3
Explanation:
We have array arr={1, 3, 6, 7} and target is 4. If we look at the absolute difference of target with every element of the array we will get { |1-4|, |3-4|, |6-4|, |7-4| } = {3, 1, 2, 3}. So, the closest number is 3.
Give the problem a try before going through the video. All the best!!!
Problem Link: https://www.geeksforgeeks.org/problems/find-the-closest-number5513/1