#include<stdio.h> #define max(a,b) (a>b?a:b) #define min(a,b) (a<b?a:b) int n; int a[110],f[110],l[110],ans=99999; int main() { scanf("%d",&n); for(int i=1;i<=n;i++) { scanf("%d",&a[i]); f[i]=l[i]=1; } for(int i=n-1;i>=1;i--) for(int j=i+1;j<=n;j++) if(a[i]>a[j]) f[i]=max(f[j]+1,f[i]); for(int i=2;i<=n;i++) for(int j=1;j<=i-1;j++) if(a[i]>a[j]) l[i]=max(l[j]+1,l[i]); for(int i=1;i<=n;i++) { ans=min(ans,n-f[i]-l[i]+1); } printf("%d",ans); return 0; } /************************************************************** Problem: 1277 User: admin Language: C Result: Accepted Time:49 ms Memory:1144 kb ****************************************************************/