#include<bits/stdc++.h> using namespace std; int main(){ int n; while(cin>>n){ int a[n+2]; for(int i=1;i<=n;++i) cin>>a[i]; int f1[n+2],f2[n+2]; for(int i=1;i<=n;++i){ f1[i]=1; for(int m=1;m<i;++m){ if(a[m]<a[i]) f1[i]=max(f1[i],f1[m]+1); } } for(int i=n;i>0;--i){ f2[i]=1; for(int m=n;m>i;--m){ if(a[m]<a[i]) f2[i]=max(f2[i],f2[m]+1); } } int ans=-1; for(int i=1;i<=n;++i) ans=max(f1[i]+f2[i],ans); cout<<n-ans+1<<endl; } } |
Double click to view unformatted code.