Given a function **F(n) = P – (0.006 * n)**, where P is given. Given a list of integers and a number, . The task is to find the number from the given list for which the value of the function is closest to . **Examples**:

Input: P = 12, A = 5 List = {1000, 2000}Output: 1Explanation: Given, P=12, A=5 For 1000, F(1000) is 12 - 1000×0.006 = 6 For 2000, F(2000) is 12 - 2000×0.006 = 0 As the nearest value to 5 is 6, so the answer is 1000.Input: P = 21, A = -11 List = {81234, 94124, 52141}Output: 3

**Approach:** Iterate over each value in the given list and find F(n) for every value. Now, compare the absolute difference of every value of F(n) and A and the value of , for which the absolute difference is minimum is the answer.

Below is the implementation of the above approach:

## C++

`// C++ program to find number from` `// given list for which value of the` `// function is closest to A` `#include <bits/stdc++.h>` `using` `namespace` `std;` `// Function to find number from` `// given list for which value of the` `// function is closest to A` `int` `leastValue(` `int` `P, ` `int` `A, ` `int` `N, ` `int` `a[])` `{` ` ` `// Stores the final index` ` ` `int` `ans = -1;` ` ` `// Declaring a variable to store` ` ` `// the minimum absolute difference` ` ` `float` `tmp = (` `float` `)INFINITY;` ` ` `for` `(` `int` `i = 0; i < N; i++)` ` ` `{` ` ` `// Finding F(n)` ` ` `float` `t = P - a[i] * 0.006;` ` ` `// Updating the index of the answer if` ` ` `// new absolute difference is less than tmp` ` ` `if` `(` `abs` `(t-A) < tmp)` ` ` `{` ` ` `tmp = ` `abs` `(t - A);` ` ` `ans = i;` ` ` `}` ` ` `}` ` ` `return` `a[ans];` `}` `// Driver code` `int` `main()` `{` ` ` `int` `N = 2, P = 12, A = 2005;` ` ` `int` `a[] = {1000, 2000};` ` ` `cout << leastValue(P, A, N, a) << endl;` `}` `// This code is contributed by` `// sanjeev2552` |

## Java

`// Java program to find number from` `// given list for which value of the` `// function is closest to A` `import` `java.util.*;` `class` `GFG` `{` `// Function to find number from` `// given list for which value of the` `// function is closest to A` `static` `int` `leastValue(` `int` `P, ` `int` `A,` ` ` `int` `N, ` `int` `a[])` `{` ` ` `// Stores the final index` ` ` `int` `ans = -` `1` `;` ` ` `// Declaring a variable to store` ` ` `// the minimum absolute difference` ` ` `float` `tmp = Float.MAX_VALUE;` ` ` `for` `(` `int` `i = ` `0` `; i < N; i++)` ` ` `{` ` ` `// Finding F(n)` ` ` `float` `t = (` `float` `) (P - a[i] * ` `0.006` `);` ` ` `// Updating the index of the answer if` ` ` `// new absolute difference is less than tmp` ` ` `if` `(Math.abs(t-A) < tmp)` ` ` `{` ` ` `tmp = Math.abs(t - A);` ` ` `ans = i;` ` ` `}` ` ` `}` ` ` `return` `a[ans];` `}` `// Driver code` `public` `static` `void` `main(String[] args)` `{` ` ` `int` `N = ` `2` `, P = ` `12` `, A = ` `2005` `;` ` ` `int` `a[] = {` `1000` `, ` `2000` `};` ` ` `System.out.println(leastValue(P, A, N, a));` `}` `}` `// This code is contributed by 29AjayKumar` |

## Python3

`# Python program to find number from` `# given list for which value of the` `# function is closest to A` `# Function to find number from` `# given list for which value of the` `# function is closest to A` `def` `leastValue(P, A, N, a):` ` ` `# Stores the final index` ` ` `ans ` `=` `-` `1` ` ` ` ` `# Declaring a variable to store` ` ` `# the minimum absolute difference` ` ` `tmp ` `=` `float` `(` `'inf'` `)` ` ` `for` `i ` `in` `range` `(N):` ` ` `# Finding F(n)` ` ` `t ` `=` `P ` `-` `a[i] ` `*` `0.006` ` ` ` ` `# Updating the index of the answer if` ` ` `# new absolute difference is less than tmp` ` ` `if` `abs` `(t ` `-` `A) < tmp:` ` ` `tmp ` `=` `abs` `(t ` `-` `A)` ` ` `ans ` `=` `i` ` ` ` ` `return` `a[ans]` `# Driver Code` `N, P, A ` `=` `2` `, ` `12` `, ` `5` `a ` `=` `[` `1000` `, ` `2000` `]` `print` `(leastValue(P, A, N, a))` |

## C#

`// C# program to find number from` `// given list for which value of the` `// function is closest to A` `using` `System;` ` ` `class` `GFG` `{` `// Function to find number from` `// given list for which value of the` `// function is closest to A` `static` `int` `leastValue(` `int` `P, ` `int` `A,` ` ` `int` `N, ` `int` `[]a)` `{` ` ` `// Stores the final index` ` ` `int` `ans = -1;` ` ` `// Declaring a variable to store` ` ` `// the minimum absolute difference` ` ` `float` `tmp = ` `float` `.MaxValue;` ` ` `for` `(` `int` `i = 0; i < N; i++)` ` ` `{` ` ` `// Finding F(n)` ` ` `float` `t = (` `float` `) (P - a[i] * 0.006);` ` ` `// Updating the index of the answer if` ` ` `// new absolute difference is less than tmp` ` ` `if` `(Math.Abs(t-A) < tmp)` ` ` `{` ` ` `tmp = Math.Abs(t - A);` ` ` `ans = i;` ` ` `}` ` ` `}` ` ` `return` `a[ans];` `}` `// Driver code` `public` `static` `void` `Main(String[] args)` `{` ` ` `int` `N = 2, P = 12, A = 2005;` ` ` `int` `[]a = {1000, 2000};` ` ` `Console.WriteLine(leastValue(P, A, N, a));` `}` `}` `// This code is contributed by Rajput-Ji` |

## PHP

`<?php` `// PHP program to find number from` `// given list for which value of the` `// function is closest to A` `// Function to find number from` `// given list for which value of the` `// function is closest to A` `function` `leastValue(` `$P` `, ` `$A` `, ` `$N` `, ` `$a` `)` `{` ` ` `// Stores the final index` ` ` `$ans` `= -1;` ` ` ` ` `// Declaring a variable to store` ` ` `// the minimum absolute difference` ` ` `$tmp` `= PHP_INT_MAX;` ` ` `for` `(` `$i` `= 0; ` `$i` `< ` `$N` `; ` `$i` `++)` ` ` `{` ` ` `// Finding F(n)` ` ` `$t` `= ` `$P` `- ` `$a` `[` `$i` `] * 0.006;` ` ` ` ` `// Updating the index of the` ` ` `// answer if new absolute` ` ` `// difference is less than tmp` ` ` `if` `(` `abs` `(` `$t` `- ` `$A` `) < ` `$tmp` `)` ` ` `{` ` ` `$tmp` `= ` `abs` `(` `$t` `- ` `$A` `);` ` ` `$ans` `= ` `$i` `;` ` ` `}` ` ` `} ` ` ` `return` `$a` `[` `$ans` `];` `}` `// Driver Code` `$N` `= 2;` `$P` `= 12;` `$A` `= 5;` `$a` `= ` `array` `(1000, 2000);` `print` `(leastValue(` `$P` `, ` `$A` `, ` `$N` `, ` `$a` `));` `// This code is contributed by mits` `?>` |

## Javascript

`<script>` `// Javascript program to find number from` `// given list for which value of the` `// function is closest to A` ` ` `// Function to find number from` `// given list for which value of the` `// function is closest to A` `function` `leastValue(P, A, N, a)` `{` ` ` ` ` `// Stores the final index` ` ` `let ans = -1;` ` ` ` ` `// Declaring a variable to store` ` ` `// the minimum absolute difference` ` ` `let tmp = Number.MAX_VALUE;` ` ` ` ` `for` `(let i = 0; i < N; i++)` ` ` `{` ` ` ` ` `// Finding F(n)` ` ` `let t = (P - a[i] * 0.006);` ` ` ` ` `// Updating the index of the answer if` ` ` `// new absolute difference is less than tmp` ` ` `if` `(Math.abs(t-A) < tmp)` ` ` `{` ` ` `tmp = Math.abs(t - A);` ` ` `ans = i;` ` ` `}` ` ` `}` ` ` `return` `a[ans];` `}` ` ` ` ` `// Driver code` ` ` `let N = 2, P = 12, A = 2005;` ` ` `let a = [1000, 2000];` ` ` ` ` `document.write(leastValue(P, A, N, a))` ` ` `</script>` |

**Output:**

1000

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the **DSA Self Paced Course** at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer **Complete Interview Preparation Course****.**

In case you wish to attend live classes with industry experts, please refer **DSA Live Classes**