For this Question: You take part in <b>N</b> quizzes and in the i<sup>th</sup> quiz you get a score of Q<sub>i</sub>. Your friends are very competitive with you and they ask you the strength of your quiz scores. Strength of an array is defined as the following:

The maximum growth Q<sub>j</sub> - Q<sub>i</sub> (Q<sub>j</sub> > Q<sub>i</sub>) between two quizzes i and j such that i < j and there is no quiz <b>k</b> such that <b>i < k < j</b> and <b>Q<sub>k</sub> > Q<sub>i</sub></b>.
<b>If there is no such pair of indexes, print -1. </b>

Print the strength of your quiz marks in order to impress your friends.First line contains a single integer N, the number of quizzes.
The second line contains N space seperated integers Q<sub>1</sub>, Q<sub>2</sub>,. , Q<sub>N</sub> the score in each quiz.

Constraints:
 1 <= N <= 10<sup>5</sup>
 1 <= Q<sub>i</sub> <= 10<sup>9</sup>Print the strength of your quiz marks.Sample Input:
6
7 10 7 2 1 8

Sample Output:
7

Explaination:
There is a growth of 7 from Q<sub>5</sub> (= 1) to Q<sub>6</sub>(= 8). There is no growth in the array greater than this., I have written this Solution Code: import java.io.*;
import java.util.*;



class Main {
    public static void main (String[] args)throws IOException {

        BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
        int N=Integer.parseInt(br.readLine());
        String[] str=br.readLine().split(" ");
        int[] arr=new int[N];
        Deque<Integer> dq=new LinkedList<Integer>();
        for(int i=0;i<N;i++)
        {
            arr[i]=Integer.parseInt(str[i]);
        }
        int res;
        for(int i=1;i<N;i++)
        {
            res=arr[i]-arr[i-1];
            while(!dq.isEmpty() && dq.getLast()<res)
            {
                dq.removeLast();
            }
            dq.addLast(res);
        }
        System.out.print(dq.getFirst());
    }
}, In this Programming Language: Java, Now tell me if this Code is compilable or not?