51Nod 1241 特殊的排序

因爲可以把一個數向最前面移或者是最後面移,即把不符合排序的那些數拿走,所以求的就是n-最長遞增序列的長度。


#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
const int N = 5e4 + 5;
int a[N],pre[N];
int main()
{
    int n;
    scanf("%d", &n);
    memset(pre,0,sizeof(pre));
    int res=0;
    for (int i=1;i<=n;++i)
    {
        scanf("%d",&a[i]);
        pre[a[i]]=pre[a[i]-1]+1;
        res=max(res, pre[a[i]]);
    }
    printf("%d\n",n-res);
    return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章