You are given an array **A **(distinct elements) of size** N**. Find out the **maximum difference** between any two elements such that larger element appears after the smaller number in **A**.

**Input:**

The first line of input contains an integer** T** denoting the number of test cases. T testcases follow. Each testcase contains two lines of input. The first line of each test case is N,N is the size of array. The second line of each test case contains N elements separated by spaces.

**Output:**

For each testcase, print the maximum difference between two element. Otherwise print **-1**

**Constraints:**

1 <= T <= 100

2 <= N <= 10^{7}

0 <= A_{i} <= 10^{7}

**Example:
Input:**

2

7

2 3 10 6 4 8 1

6

7 9 5 6 3 2

**Output:**

8

2

**Explanation:
Testcase1: ** Array is [2, 3, 10, 6, 4, 8, 1] then returned value is 8 (Diff between 10 and 2).

If you have purchased any course from GeeksforGeeks then please ask your doubt on course discussion forum. You will get quick replies from GFG Moderators there.

CodeBuddy | 164 |

hardikJain5 | 142 |

Akkki111 | 141 |

__forgivingyou | 120 |

saurabhgrade1 | 108 |

KshatriyaYash | 1932 |

nikhil_sojan | 1374 |

lonecoder | 1236 |

SumitSingh27 | 1103 |

mazumderrohit8 | 1095 |

blackshadows | 5327 |

Ibrahim Nash | 5219 |

akhayrutdinov | 5111 |

mb1973 | 4572 |

Quandray | 4444 |

Login to report an issue on this page.