#include<iostream>
using namespace std;
const int N = 1e6 + 10;
int a[N], n, res;
void pro(int l, int r)
{
if (l > r) return;
int index = 0, min_ = 1e9;
for (int i = l; i <= r; i++) {
if (a[i] < min_) {
min_ = a[i];
index = i;
}
}
if (a[index] == 0) return;
res += min_;
for (int i = l; i <= r; i++) a[i] -= min_;
int ll = 0, rr = 0;
for (int i = l; i <= r; i++) {
while (a[i] == 0 && i <= r)i++;
ll = i;
while (a[i] != 0 && i <= r)i++;
rr = i - 1;
pro(ll, rr);
}
return;
}
int main()
{
cin >> n;
for (int i = 1; i <= n; i++) cin >> a[i];
pro(1, n);
cout << res << endl;
return 0;
}