#include
#include
#include
using namespace std;
int DeleteNum(vector &vec);
int main() {
int N;
cin >> N;
vector vec;
for (int i = 0; i < N; ++i) {
int height;
cin >> height;
vec.push_back(height);
}
vector DelNum(N, 0);
for (int i = 0; i < N; ++i) {
vector Left;
vector Right;
for (int k = 0; k < N; ++k) {
if (k <= i)
Left.push_back(vec[k]);
if (k >= i)
Right.push_back(vec[k]);
}
reverse(Right.begin(), Right.end());
DelNum[i] = DeleteNum(Left) + DeleteNum(Right);
}
int min = DelNum[0];
for (int i = 0; i < N; ++i) {
if (min > DelNum[i])
min = DelNum[i];
}
cout << min << endl;
return 0;
}
int DeleteNum(vector &vec) {
if (vec.size() == 1)
return 0;
vector f(vec.size(), 0);
int N = vec.size();
f[0] = 1;
for (int i = 0; i < N; ++i) {
f[i] = 1;
for (int j = 0; j < i; ++j) {
if (vec[j] < vec[i] && f[j] > f[i] - 1)
f[i] = f[j] + 1;
}
}
return N - f[N - 1];
}