import java.util.*;
public class Main {

	public static void main(String[] args) {
		Scanner cin=new Scanner(System.in);
		
		int n=cin.nextInt();
		
		List<Integer> data=new ArrayList<>();
		
		for(int i=0;i<n;i++)data.add(cin.nextInt());
		
		int res=-2000000000,minv=data.get(0);
		
		for(int i=1;i<n;i++) {
			res=Math.max(res, data.get(i)-minv);
			minv=Math.min(minv, data.get(i));
		}
		System.out.println(res);
	}

}
 import java.util.*; util.* java public class Main {

	public static void main(String[] args) {
		Scanner cin=new Scanner(System.in);
		
		int n=cin.nextInt();
		
		List<Integer> data=new ArrayList<>();
		
		for(int i=0;i<n;i++)data.add(cin.nextInt());
		
		int res=-2000000000,minv=data.get(0);
		
		for(int i=1;i<n;i++) {
			res=Math.max(res, data.get(i)-minv);
			minv=Math.min(minv, data.get(i));
		}
		System.out.println(res);
	}

} Main public static void main(String[] args) {
		Scanner cin=new Scanner(System.in);
		
		int n=cin.nextInt();
		
		List<Integer> data=new ArrayList<>();
		
		for(int i=0;i<n;i++)data.add(cin.nextInt());
		
		int res=-2000000000,minv=data.get(0);
		
		for(int i=1;i<n;i++) {
			res=Math.max(res, data.get(i)-minv);
			minv=Math.min(minv, data.get(i));
		}
		System.out.println(res);
	} main {
		Scanner cin=new Scanner(System.in);
		
		int n=cin.nextInt();
		
		List<Integer> data=new ArrayList<>();
		
		for(int i=0;i<n;i++)data.add(cin.nextInt());
		
		int res=-2000000000,minv=data.get(0);
		
		for(int i=1;i<n;i++) {
			res=Math.max(res, data.get(i)-minv);
			minv=Math.min(minv, data.get(i));
		}
		System.out.println(res);
	} Scanner cin=new Scanner(System.in); cin new Scanner(System.in) int n=cin.nextInt(); n cin.nextInt() cin.nextInt cin List<Integer> data=new ArrayList<>(); data new ArrayList<>() for(int i=0;i<n;i++)data.add(cin.nextInt()); int i=0; int i=0; i 0 i<n i n i++ i++ i data.add(cin.nextInt()); data.add(cin.nextInt()) data.add data cin.nextInt() cin.nextInt cin int res=-2000000000 res -2000000000 2000000000 minv=data.get(0); minv data.get(0) data.get data 0 for(int i=1;i<n;i++) {
			res=Math.max(res, data.get(i)-minv);
			minv=Math.min(minv, data.get(i));
		} int i=1; int i=1; i 1 i<n i n i++ i++ i {
			res=Math.max(res, data.get(i)-minv);
			minv=Math.min(minv, data.get(i));
		} {
			res=Math.max(res, data.get(i)-minv);
			minv=Math.min(minv, data.get(i));
		} res=Math.max(res, data.get(i)-minv) res Math.max(res, data.get(i)-minv) Math.max Math res data.get(i)-minv data.get(i) data.get data i minv minv=Math.min(minv, data.get(i)) minv Math.min(minv, data.get(i)) Math.min Math minv data.get(i) data.get data i System.out.println(res) System.out.println System.out System System.out res String[] args args public class Main {

	public static void main(String[] args) {
		Scanner cin=new Scanner(System.in);
		
		int n=cin.nextInt();
		
		List<Integer> data=new ArrayList<>();
		
		for(int i=0;i<n;i++)data.add(cin.nextInt());
		
		int res=-2000000000,minv=data.get(0);
		
		for(int i=1;i<n;i++) {
			res=Math.max(res, data.get(i)-minv);
			minv=Math.min(minv, data.get(i));
		}
		System.out.println(res);
	}

} public class Main {

	public static void main(String[] args) {
		Scanner cin=new Scanner(System.in);
		
		int n=cin.nextInt();
		
		List<Integer> data=new ArrayList<>();
		
		for(int i=0;i<n;i++)data.add(cin.nextInt());
		
		int res=-2000000000,minv=data.get(0);
		
		for(int i=1;i<n;i++) {
			res=Math.max(res, data.get(i)-minv);
			minv=Math.min(minv, data.get(i));
		}
		System.out.println(res);
	}

} Main
import java.util.*;
public class Main {

	public static void main(String[] args) {
		Scanner cin=new Scanner(System.in);
		
		int n=cin.nextInt();
		
		List<Integer> data=new ArrayList<>();
		
		for(int i=0;i<n;i++)data.add(cin.nextInt());
		
		int res=-2000000000,minv=data.get(0);
		
		for(int i=1;i<n;i++) {
			res=Math.max(res, data.get(i)-minv);
			minv=Math.min(minv, data.get(i));
		}
		System.out.println(res);
	}

}

