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)