input_num = gets.to_i

#下限値より1小さい値を設定
max_diff = -1000000001

#最小値を初回の入力値に設定
min_value = gets.to_i  

#1回値を取得しているのでinput_numから1を引く
(input_num - 1).times do
    #入力値を取得
    check_value = gets.to_i    
    
    #最大の差分値 = 入力値 - 最小値 または これまでの最大差分値
    max_diff = max_diff > (check_value - min_value) ? max_diff : (check_value - min_value)
    
    min_value = min_value < check_value ? min_value : check_value
end

puts max_diff


