# Maximum Difference in Positions

Posted: 13 Mar, 2021
Difficulty: Moderate

## PROBLEM STATEMENT

#### Note:

``````Return 0, if there are no such two students present.
``````
##### Input Format:
``````The first line contains a single integer ‘T’ representing the number of test cases.
The first line of each test case will contain a single integer ‘N’ which denotes the number of students in the row.
The second line of each test case contains the ‘N’ space-separated integers in which the “i-th” number represents the marks of the “i-th” student.
``````
##### Output Format:
``````For each test case, print the maximum difference between the two students described above. If, there are no such students then print 0.

Output for every test case will be printed in a separate line.
``````
##### Note:
``````You don’t need to print anything; It has already been taken care of.
``````
##### Constraints:
``````1 <= T <= 50
2 <= N <= 10000
0 <= arr[ i ] <= 10^5

Where ‘T’ is the number of test cases.
Where 'N' is the number of students in the row and “arr[ i ]” denotes the marks of “i-th” student.

Time limit: 1 sec
`````` Approach 1

The basic idea is to iterate through all the pairs of students and find the maximum difference between two students such that the first one has marks less than or equal to the second one.

The steps are as follows:

1. Create a variable to store the answer. (say, “ans”)
2. Iterate through the “arr”. (say, iterator = ‘i’)
• Iterate again through the “arr” but from ‘i’ + 1. (say, iterator = ‘j’)
• Check if arr[ i ] is less than or equal to arr[ j ] then store the maximum between the “ans” and ‘j’ - ‘i’ in the “ans”.
3. Return “ans”.