program anchovies;
Uses Math;
var N, i, prezzominimo, prezzoacquisto, maxprofitto : Longint;
    P : array[1..100000] of  Longint;
 
begin
	readln(N);
	for i:=1 to N do readln(P[i]);
	prezzominimo:=P[1];
	maxprofitto:=0;
	for i:=2 to N do 
	               begin
	                  if P[i]<prezzominimo then prezzominimo:= P[i]
	                                       else
	                                          if P[i]>prezzominimo then
	                                              begin
	                                                 prezzoacquisto:=prezzominimo;
	                                                 maxprofitto:=max(maxprofitto, P[i]-prezzoacquisto);
	                                              end;
	               end;
  writeln(maxprofitto);	               
end.
				cHJvZ3JhbSBhbmNob3ZpZXM7ClVzZXMgTWF0aDsKdmFyIE4sIGksIHByZXp6b21pbmltbywgcHJlenpvYWNxdWlzdG8sIG1heHByb2ZpdHRvIDogTG9uZ2ludDsKICAgIFAgOiBhcnJheVsxLi4xMDAwMDBdIG9mICBMb25naW50OwogCmJlZ2luCglyZWFkbG4oTik7Cglmb3IgaTo9MSB0byBOIGRvIHJlYWRsbihQW2ldKTsKCXByZXp6b21pbmltbzo9UFsxXTsKCW1heHByb2ZpdHRvOj0wOwoJZm9yIGk6PTIgdG8gTiBkbyAKCSAgICAgICAgICAgICAgIGJlZ2luCgkgICAgICAgICAgICAgICAgICBpZiBQW2ldPHByZXp6b21pbmltbyB0aGVuIHByZXp6b21pbmltbzo9IFBbaV0KCSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UKCSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIFBbaV0+cHJlenpvbWluaW1vIHRoZW4KCSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZWdpbgoJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZXp6b2FjcXVpc3RvOj1wcmV6em9taW5pbW87CgkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4cHJvZml0dG86PW1heChtYXhwcm9maXR0bywgUFtpXS1wcmV6em9hY3F1aXN0byk7CgkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kOwoJICAgICAgICAgICAgICAgZW5kOwogIHdyaXRlbG4obWF4cHJvZml0dG8pOwkgICAgICAgICAgICAgICAKZW5kLg==