#50516: 陷阱多(python)


11155088@gs.hs.ntnu.edu.tw (ace1110)


input() # 對於動態語言不需事先要知道陣列大小
a = list(map(int, input().split()))
max_val = a[0]
ans = float('-inf')

# 雙層迴圈會TLE

for j in range(1, len(a)):
    diff = max_val - a[j]
    if diff > ans:
        ans = diff
    if a[j] > max_val:
        max_val = a[j]

print(ans)