import java.util.Scanner;

public class Main {
	public static void main(String args[]){
		int MAX = 200000;
		int[] R = new int[MAX];
		
		Scanner scan = new Scanner(System.in);
		int n = scan.nextInt();
		
		for(int i = 0; i < n; i++){
			R[i] = scan.nextInt();
		}
		
		int maxv = -2000000000; //???????°??????????????????????????¨????
		int minv = R[0];
		
		for(int i = 1; i < n; i++){ //????????§??????R[i]?????????????????°???????????????
			maxv = R[i] - minv > maxv ? R[i] - minv : maxv; //?????§????????´??°
			minv = R[i] < minv ? R[i] : minv; //???????????§???????°?????????????????????????
		}
		System.out.println(maxv);
	}
} import java.util.Scanner; Scanner java.util public class Main {
	public static void main(String args[]){
		int MAX = 200000;
		int[] R = new int[MAX];
		
		Scanner scan = new Scanner(System.in);
		int n = scan.nextInt();
		
		for(int i = 0; i < n; i++){
			R[i] = scan.nextInt();
		}
		
		int maxv = -2000000000; //???????°??????????????????????????¨????
		int minv = R[0];
		
		for(int i = 1; i < n; i++){ //????????§??????R[i]?????????????????°???????????????
			maxv = R[i] - minv > maxv ? R[i] - minv : maxv; //?????§????????´??°
			minv = R[i] < minv ? R[i] : minv; //???????????§???????°?????????????????????????
		}
		System.out.println(maxv);
	}
} Main public static void main(String args[]){
		int MAX = 200000;
		int[] R = new int[MAX];
		
		Scanner scan = new Scanner(System.in);
		int n = scan.nextInt();
		
		for(int i = 0; i < n; i++){
			R[i] = scan.nextInt();
		}
		
		int maxv = -2000000000; //???????°??????????????????????????¨????
		int minv = R[0];
		
		for(int i = 1; i < n; i++){ //????????§??????R[i]?????????????????°???????????????
			maxv = R[i] - minv > maxv ? R[i] - minv : maxv; //?????§????????´??°
			minv = R[i] < minv ? R[i] : minv; //???????????§???????°?????????????????????????
		}
		System.out.println(maxv);
	} main {
		int MAX = 200000;
		int[] R = new int[MAX];
		
		Scanner scan = new Scanner(System.in);
		int n = scan.nextInt();
		
		for(int i = 0; i < n; i++){
			R[i] = scan.nextInt();
		}
		
		int maxv = -2000000000; //???????°??????????????????????????¨????
		int minv = R[0];
		
		for(int i = 1; i < n; i++){ //????????§??????R[i]?????????????????°???????????????
			maxv = R[i] - minv > maxv ? R[i] - minv : maxv; //?????§????????´??°
			minv = R[i] < minv ? R[i] : minv; //???????????§???????°?????????????????????????
		}
		System.out.println(maxv);
	} int MAX = 200000; MAX 200000 int[] R = new int[MAX]; R new int[MAX] MAX Scanner scan = new Scanner(System.in); scan new Scanner(System.in) int n = scan.nextInt(); n scan.nextInt() scan.nextInt scan for(int i = 0; i < n; i++){
			R[i] = scan.nextInt();
		} int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
			R[i] = scan.nextInt();
		} {
			R[i] = scan.nextInt();
		} R[i] = scan.nextInt() R[i] R i scan.nextInt() scan.nextInt scan int maxv = -2000000000; maxv -2000000000 2000000000 int minv = R[0]; minv R[0] R 0 for(int i = 1; i < n; i++){ //????????§??????R[i]?????????????????°???????????????
			maxv = R[i] - minv > maxv ? R[i] - minv : maxv; //?????§????????´??°
			minv = R[i] < minv ? R[i] : minv; //???????????§???????°?????????????????????????
		} int i = 1; int i = 1; i 1 i < n i n i++ i++ i { //????????§??????R[i]?????????????????°???????????????
			maxv = R[i] - minv > maxv ? R[i] - minv : maxv; //?????§????????´??°
			minv = R[i] < minv ? R[i] : minv; //???????????§???????°?????????????????????????
		} { //????????§??????R[i]?????????????????°???????????????
			maxv = R[i] - minv > maxv ? R[i] - minv : maxv; //?????§????????´??°
			minv = R[i] < minv ? R[i] : minv; //???????????§???????°?????????????????????????
		} maxv = R[i] - minv > maxv ? R[i] - minv : maxv maxv R[i] - minv > maxv ? R[i] - minv : maxv R[i] - minv > maxv R[i] - minv R[i] R i minv maxv R[i] - minv R[i] R i minv maxv minv = R[i] < minv ? R[i] : minv minv R[i] < minv ? R[i] : minv R[i] < minv R[i] R i minv R[i] R i minv System.out.println(maxv) System.out.println System.out System System.out maxv String args[] args public class Main {
	public static void main(String args[]){
		int MAX = 200000;
		int[] R = new int[MAX];
		
		Scanner scan = new Scanner(System.in);
		int n = scan.nextInt();
		
		for(int i = 0; i < n; i++){
			R[i] = scan.nextInt();
		}
		
		int maxv = -2000000000; //???????°??????????????????????????¨????
		int minv = R[0];
		
		for(int i = 1; i < n; i++){ //????????§??????R[i]?????????????????°???????????????
			maxv = R[i] - minv > maxv ? R[i] - minv : maxv; //?????§????????´??°
			minv = R[i] < minv ? R[i] : minv; //???????????§???????°?????????????????????????
		}
		System.out.println(maxv);
	}
} public class Main {
	public static void main(String args[]){
		int MAX = 200000;
		int[] R = new int[MAX];
		
		Scanner scan = new Scanner(System.in);
		int n = scan.nextInt();
		
		for(int i = 0; i < n; i++){
			R[i] = scan.nextInt();
		}
		
		int maxv = -2000000000; //???????°??????????????????????????¨????
		int minv = R[0];
		
		for(int i = 1; i < n; i++){ //????????§??????R[i]?????????????????°???????????????
			maxv = R[i] - minv > maxv ? R[i] - minv : maxv; //?????§????????´??°
			minv = R[i] < minv ? R[i] : minv; //???????????§???????°?????????????????????????
		}
		System.out.println(maxv);
	}
} Main
import java.util.Scanner;

public class Main {
	public static void main(String args[]){
		int MAX = 200000;
		int[] R = new int[MAX];
		
		Scanner scan = new Scanner(System.in);
		int n = scan.nextInt();
		
		for(int i = 0; i < n; i++){
			R[i] = scan.nextInt();
		}
		
		int maxv = -2000000000; //???????°??????????????????????????¨????
		int minv = R[0];
		
		for(int i = 1; i < n; i++){ //????????§??????R[i]?????????????????°???????????????
			maxv = R[i] - minv > maxv ? R[i] - minv : maxv; //?????§????????´??°
			minv = R[i] < minv ? R[i] : minv; //???????????§???????°?????????????????????????
		}
		System.out.println(maxv);
	}
}