n = gets.chomp.to_i
h_array = gets.chomp.split(" ").map(&:to_i)
@mizuyari_num = 0

def self.mizuyari(target_array)
  slice_h_array = []
  temp_array = []
  target_array.each do |h|
    if h == target_array.min
      if !temp_array.empty?
        slice_h_array.push(temp_array)
        temp_array = []
      end
    else
      temp_array.push(h - target_array.min)
    end
  end
  # 最後追加されてなかったら追加する
  if !temp_array.empty?
    slice_h_array.push(temp_array)
  end
  # 水やり完了
  @mizuyari_num += target_array.min
  if slice_h_array.flatten.empty?
    # 終わり
  else
    slice_h_array.each { |h|
      mizuyari(h)
    }
  end
end

mizuyari(h_array)
print("#{@mizuyari_num}\n")