#include <iostream>
#include <vector>
using namespace std;
int a[200005];
int getLISLength(int A[], int len) {
   //定义一维数组并初始化为1
   int* lis = new int[len];
   for (int i = 0; i < len; ++i)
      lis[i] = 1;

   // 计算每个i对应的lis最大值，即打表的过程
   for (int i = 1; i < len; ++i)
      for (int j = 0; j < i; ++j)     // 0到i-1
         if ( A[i] > A[j] && lis[i] < lis[j] + 1)
            lis[i] = lis[j] + 1;  // 更新

   // 数组中最大的那个，就是最长递增子序列的长度
   int maxlis = 0;
   for (int i = 0; i < len; ++i)
      if ( maxlis < lis[i] )
         maxlis = lis[i];

   delete [] lis;
   return maxlis;
}
int main()
{
    int n;
    cin>>n;
    for(int i=0;i<n;i++) cin>>a[i];
    int ans =getLISLength(a,n);
    cout<<n-ans+1<<endl;


    return 0;
}
