import java.lang.reflect.Array;
import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n=sc.nextInt();
        int []nums=new int[n];
        for (int i = 0; i < n; i++) {
            nums[i]=sc.nextInt();
        }

        int []dp1=new int[n];//左边  dp1[i]表示 i以及i之前 以nums[i]结尾的最长递增子序列的长度
        int []dp2=new int[n];//右边  dp2[i]表示 i以及i之前 以nums[i]结尾的最长递减子序列的长度
        Arrays.fill(dp1,1);//非常重要
        Arrays.fill(dp2,1);//非常重要
        int res=0;
        for (int j = 1; j < n; j++) {
            for (int i = 0; i < j; i++) {
                if(nums[j]>nums[i]){
//                    if(dp[i]+1>dp[j]){
//                        dp[j]=dp[i]+1;
//                    }
                    dp1[j]=Math.max(dp1[j],dp1[i]+1);
                }
            }
        }
        for (int j = n-2; j >=0; j--) {
            for (int i = n-1; i > j; i--) {
                if(nums[j]>nums[i]){
//                    if(dp[i]+1>dp[j]){
//                        dp[j]=dp[i]+1;
//                    }
                    dp2[j]=Math.max(dp2[j],dp2[i]+1);
                }
            }
        }
        int min=n;
        for (int i = 0; i < n; i++) {
            min=Math.min(min,n-(dp1[i]+dp2[i]-1));
        }
        System.out.println(min);
    }
}