import java.util.Scanner;

public class Main {
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
		int minR=sc.nextInt();
		int maxR=-1000000000;
		for(int i=1;i<n;i++){
			int R=sc.nextInt();
			maxR=Math.max(maxR,R-minR);
			minR=Math.min(minR, R);
		}
		System.out.println(maxR);
	}

} import java.util.Scanner; Scanner java.util public class Main {
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
		int minR=sc.nextInt();
		int maxR=-1000000000;
		for(int i=1;i<n;i++){
			int R=sc.nextInt();
			maxR=Math.max(maxR,R-minR);
			minR=Math.min(minR, R);
		}
		System.out.println(maxR);
	}

} Main public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
		int minR=sc.nextInt();
		int maxR=-1000000000;
		for(int i=1;i<n;i++){
			int R=sc.nextInt();
			maxR=Math.max(maxR,R-minR);
			minR=Math.min(minR, R);
		}
		System.out.println(maxR);
	} main {
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
		int minR=sc.nextInt();
		int maxR=-1000000000;
		for(int i=1;i<n;i++){
			int R=sc.nextInt();
			maxR=Math.max(maxR,R-minR);
			minR=Math.min(minR, R);
		}
		System.out.println(maxR);
	} Scanner sc=new Scanner(System.in); sc new Scanner(System.in) int n=sc.nextInt(); n sc.nextInt() sc.nextInt sc int minR=sc.nextInt(); minR sc.nextInt() sc.nextInt sc int maxR=-1000000000; maxR -1000000000 1000000000 for(int i=1;i<n;i++){
			int R=sc.nextInt();
			maxR=Math.max(maxR,R-minR);
			minR=Math.min(minR, R);
		} int i=1; int i=1; i 1 i<n i n i++ i++ i {
			int R=sc.nextInt();
			maxR=Math.max(maxR,R-minR);
			minR=Math.min(minR, R);
		} {
			int R=sc.nextInt();
			maxR=Math.max(maxR,R-minR);
			minR=Math.min(minR, R);
		} int R=sc.nextInt(); R sc.nextInt() sc.nextInt sc maxR=Math.max(maxR,R-minR) maxR Math.max(maxR,R-minR) Math.max Math maxR R-minR R minR minR=Math.min(minR, R) minR Math.min(minR, R) Math.min Math minR R System.out.println(maxR) System.out.println System.out System System.out maxR String[] args args public class Main {
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
		int minR=sc.nextInt();
		int maxR=-1000000000;
		for(int i=1;i<n;i++){
			int R=sc.nextInt();
			maxR=Math.max(maxR,R-minR);
			minR=Math.min(minR, R);
		}
		System.out.println(maxR);
	}

} public class Main {
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
		int minR=sc.nextInt();
		int maxR=-1000000000;
		for(int i=1;i<n;i++){
			int R=sc.nextInt();
			maxR=Math.max(maxR,R-minR);
			minR=Math.min(minR, R);
		}
		System.out.println(maxR);
	}

} Main
import java.util.Scanner;

public class Main {
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
		int minR=sc.nextInt();
		int maxR=-1000000000;
		for(int i=1;i<n;i++){
			int R=sc.nextInt();
			maxR=Math.max(maxR,R-minR);
			minR=Math.min(minR, R);
		}
		System.out.println(maxR);
	}

}