/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
Scanner scanner
= new Scanner
(System.
in); int n = scanner.nextInt();
int[] list = new int[n];
int i = 0;
while(i < n) {
list[i] = scanner.nextInt();
i++;
}
// int m = scanner.nextInt();
// List<Integer> list2 = new ArrayList<>();
// while(m > 0) {
// list2.add(scanner.nextInt());
// m--;
// }
for(int j : list) {
}
// System.out.println();
// for(int i : list2) {
// System.out.print(i);
// System.out.print(" ");
// }
// List<Integer> sortedArray = mergeTwoList(list, list2);
// for(int i : sortedArray) {
// System.out.print(i);
// System.out.print(" ");
// }
// findProduct(list, n, 1, 0);
// for(int k : list) {
// System.out.print(k);
// System.out.print(" ");
// }
maxDiff(list, n);
}
private static void maxDiff(int[] arr, int n) {
int max = arr[n-1], min = arr[n-1];
int max_in = n-1 , min_in = n-1;
if (n == 1) {
return;
}
for(int i = n-2; i > 0 ; i--) {
if (arr[i] > max && i > min_in) {
max = arr[i];
max_in = i;
} else if (arr[i] < min && i < max_in) {
min = arr[i];
min_in = i;
}
}
}
// private static int findProduct(int[] arr, int n, int left, int i) {
// if (i == n) {
// return 1;
// }
// int current = arr[i];
// int right = findProduct(arr, n, left * arr[i], i+1);
// arr[i] = left * right;
// return current * right;
// }
// private static void setAlternative(List<Integer> arr) {
// int n = arr.size();
// int[] arr1 = new int[n];
// System.out.println("n= " + n);
// for (int i = 1 ; i < n-1 ;) {
// System.out.println("n= " + n);
// if (arr.get(i-1) < arr.get(i) && arr.get(i) > arr.get(i+1)) {
// i = i+2;
// continue;
// } else {
// if (arr.get(i-1) > arr.get(i)) {
// arr1[i-1] = arr.get(i);
// arr1[i] = arr.get(i-1);
// arr1[i+1] = arr.get(i+1);
// } else if (arr.get(i+1) > arr.get(i)) {
// arr1[i+1] = arr.get(i);
// arr1[i] = arr.get(i+1);
// arr1[i-1] = arr.get(i-1);
// }
// }
// System.out.println();
// for(int j: arr1) {
// System.out.print(j + " ");
// }
// i = i+2;
// }
// for(int i: arr1) {
// System.out.print(i + " ");
// }
// }
// private static List<Integer> mergeTwoList(List<Integer> a1, List<Integer> a2 ) {
// List<Integer> sortedList = new ArrayList();
// int n = a1.size();
// int m = a2.size();
// if (n == 0) {
// return a2;
// }
// if (m == 0) {
// return a1;
// }
// int k = 0; // pointer of sorted array;
// int i =0 , j =0 ;
// System.out.println("Before While");
// while(j < m && i < n) {
// System.out.println("Inside While" + i + " " + j + " "+ k);
// if ((a1.get(i) < a2.get(j))) {
// sortedList.add(a1.get(i));
// k++;
// i++;
// } else if ((a1.get(i) > a2.get(j))) {
// sortedList.add(a2.get(j));
// k++;
// j++;
// }
// }
// while(j < m) {
// sortedList.add(a2.get(j));
// j++;
// }
// while(i < n) {
// sortedList.add(a1.get(i));
// i++;
// }
// return sortedList;
// }
}