import math

N = int(input())
R = [int(input().strip()) for _ in range(N)]

maxv = -math.inf
minv = R[0]
for i in range(1, N):

    tmp_maxv = R[i] - minv # 差額をセットする
    # 現在の最大差額と差額の大きい方を最大差額にする
    if maxv < tmp_maxv:
        maxv = tmp_maxv

    # 現在値が最小なら、最小値を更新する
    if R[i] < minv:
        minv = R[i]

print(maxv) import math math N = int(input()) N int(input()) int input() input int(input().strip()) for _ in range(N) for _ in range(N) _ range(N) range N for _ in range(N) int(input().strip()) int input().strip() ().strip () input strip R = [int(input().strip()) for _ in range(N)] R [int(input().strip()) for _ in range(N)] maxv = -math.inf maxv -math.inf math.inf math inf minv = R[0] minv R[0] R 0 for i in range(1, N):

    tmp_maxv = R[i] - minv # 差額をセットする
    # 現在の最大差額と差額の大きい方を最大差額にする
    if maxv < tmp_maxv:
        maxv = tmp_maxv

    # 現在値が最小なら、最小値を更新する
    if R[i] < minv:
        minv = R[i] i range(1, N) range 1 N tmp_maxv = R[i] - minv tmp_maxv R[i] - minv R[i] R i minv if maxv < tmp_maxv:
        maxv = tmp_maxv

    # 現在値が最小なら、最小値を更新する
     maxv < tmp_maxv maxv tmp_maxv maxv = tmp_maxv maxv tmp_maxv if R[i] < minv:
        minv = R[i] R[i] < minv R[i] R i minv minv = R[i] minv R[i] R i print(maxv) print maxv tmp_maxv = R[i] - minv R[i] - minv tmp_maxv N = int(input()) int(input()) N minv = R[0] R[0] minv R = [int(input().strip()) for _ in range(N)] [int(input().strip()) for _ in range(N)] R minv = R[i] R[i] minv maxv = -math.inf -math.inf maxv maxv = tmp_maxv tmp_maxv maxv
import math

N = int(input())
R = [int(input().strip()) for _ in range(N)]

maxv = -math.inf
minv = R[0]
for i in range(1, N):

    tmp_maxv = R[i] - minv # 差額をセットする
    # 現在の最大差額と差額の大きい方を最大差額にする
    if maxv < tmp_maxv:
        maxv = tmp_maxv

    # 現在値が最小なら、最小値を更新する
    if R[i] < minv:
        minv = R[i]

print(maxv)
