# Array formed from difference of each element from the largest element in the given array

Given an array arr[], the task is to find the array formed from the difference of each element from the largest element in the given array.

Example:

Input: arr[] = {3, 6, 9, 2,6}
Output: {6, 3, 0, 7, 3}
Explanation:
Largest element of the array = 9
Therefore difference of arr[i] from 9:
Element 1: 9 – 3 = 6
Element 2: 9 – 6 = 3
Element 3: 9 – 9 = 0
Element 4: 9 – 2 = 7
Element 5: 9 – 6 = 3
Hence the output will be {6, 3, 0, 7, 3}

Input: arr[] = {7, 2, 5, 6, 3, 1, 6, 9}
Output: {2, 7, 4, 3, 6, 8, 3, 0}

## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

Approach:
Find the largest of n elements in an array and store it in a variable largest. Now check the difference between largest and the other elements in the array.

Below is the implementation of the above approach:

## C++

 `// C++ program to find the array formed ` `// from the difference of each element  ` `// from the largest element in the given array ` ` `  `#include ` `using` `namespace` `std; ` `int` `difference(``int` `arr[], ``int` `n) ` `{ ` `    ``// Initializing current largest  ` `    ``// as the first element. ` `    ``int` `largest = arr; ` `    ``int` `i; ` ` `  `    ``// For loop to compute  ` `    ``// the largest element ` `    ``for` `(i = 0; i < n; i++) { ` ` `  `        ``// Checking if the current element  ` `        ``// is greater than the defined largest ` `        ``if` `(largest < arr[i]) ` `            ``largest = arr[i]; ` `    ``} ` ` `  `    ``// For loop to replace the elements  ` `    ``// in the array with the difference  ` `    ``for` `(i = 0; i < n; i++) ` `        ``arr[i] = largest - arr[i]; ` ` `  `    ``// For loop to print the elements ` `    ``for` `(i = 0; i < n; i++) ` `        ``cout << arr[i] << ``" "``; ` `} ` ` `  `// Driver code ` `int` `main() ` `{ ` `    ``int` `arr[] = { 10, 5, 9, 3, 2 }; ` `    ``int` `n = ``sizeof``(arr) / ``sizeof``(arr); ` `    ``difference(arr, n); ` `    ``return` `0; ` `} `

## Java

 `// Java program to find the array formed ` `// from the difference of each element  ` `// from the largest element in the given array ` `import` `java.util.*; ` ` `  `class` `GFG ` `{ ` `static` `void` `difference(``int` `arr[], ``int` `n) ` `{ ` `    ``// Initializing current largest  ` `    ``// as the first element. ` `    ``int` `largest = arr[``0``]; ` `    ``int` `i; ` ` `  `    ``// For loop to compute  ` `    ``// the largest element ` `    ``for` `(i = ``0``; i < n; i++) ` `    ``{ ` ` `  `        ``// Checking if the current element  ` `        ``// is greater than the defined largest ` `        ``if` `(largest < arr[i]) ` `            ``largest = arr[i]; ` `    ``} ` ` `  `    ``// For loop to replace the elements  ` `    ``// in the array with the difference  ` `    ``for` `(i = ``0``; i < n; i++) ` `        ``arr[i] = largest - arr[i]; ` ` `  `    ``// For loop to print the elements ` `    ``for` `(i = ``0``; i < n; i++) ` `        ``System.out.print(arr[i] + ``" "``); ` `} ` ` `  `// Driver code ` `public` `static` `void` `main(String[] args) ` `{ ` `    ``int` `arr[] = { ``10``, ``5``, ``9``, ``3``, ``2` `}; ` `    ``int` `n = arr.length; ` `    ``difference(arr, n); ` `} ` `} ` ` `  `// This code is contributed by 29AjayKumar `

## Python3

 `# Python3 program to find the array formed ` `# from the difference of each element  ` `# from the largest element in the given array ` `def` `difference(arr, n): ` `     `  `    ``# Initializing current largest ` `    ``# as the first element. ` `    ``largest ``=` `arr[``0``]; ` `    ``i ``=` `0``; ` ` `  `    ``# For loop to compute ` `    ``# the largest element ` `    ``for` `i ``in` `range``(n): ` ` `  `        ``# Checking if the current element ` `        ``# is greater than the defined largest ` `        ``if` `(largest < arr[i]): ` `            ``largest ``=` `arr[i]; ` `     `  `    ``# For loop to replace the elements ` `    ``# in the array with the difference ` `    ``for` `i ``in` `range``(n): ` `        ``arr[i] ``=` `largest ``-` `arr[i]; ` ` `  `    ``# For loop to prthe elements ` `    ``for` `i ``in` `range``(n): ` `        ``print``(arr[i], end ``=` `" "``); ` ` `  `# Driver code ` `if` `__name__ ``=``=` `'__main__'``: ` `    ``arr ``=` `[ ``10``, ``5``, ``9``, ``3``, ``2` `]; ` `    ``n ``=` `len``(arr); ` `    ``difference(arr, n); ` ` `  `# This code is contributed by Rajput-Ji `

## C#

 `// C# program to find the array formed ` `// from the difference of each element  ` `// from the largest element in the given array ` `using` `System; ` ` `  `class` `GFG ` `{ ` `     `  `static` `void` `difference(``int` `[]arr, ``int` `n) ` `{ ` `    ``// Initializing current largest  ` `    ``// as the first element. ` `    ``int` `largest = arr; ` `    ``int` `i; ` ` `  `    ``// For loop to compute  ` `    ``// the largest element ` `    ``for` `(i = 0; i < n; i++) ` `    ``{ ` ` `  `        ``// Checking if the current element  ` `        ``// is greater than the defined largest ` `        ``if` `(largest < arr[i]) ` `            ``largest = arr[i]; ` `    ``} ` ` `  `    ``// For loop to replace the elements  ` `    ``// in the array with the difference  ` `    ``for` `(i = 0; i < n; i++) ` `        ``arr[i] = largest - arr[i]; ` ` `  `    ``// For loop to print the elements ` `    ``for` `(i = 0; i < n; i++) ` `        ``Console.Write(arr[i] + ``" "``); ` `} ` ` `  `// Driver code ` `public` `static` `void` `Main(String[] args) ` `{ ` `    ``int` `[]arr = { 10, 5, 9, 3, 2 }; ` `    ``int` `n = arr.Length; ` `    ``difference(arr, n); ` `} ` `} ` ` `  `// This code is contributed by PrinciRaj1992 `

Output:

```0 5 1 7 8
```

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.

My Personal Notes arrow_drop_up Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.