PTA列车调度
求最少的非连续降序列数
=求最长的非连续升序列长度
#include<iostream>
using namespace std;
int q[100005];
int main()
{
int n,m,k=0;
cin>>n;
while(n--){
cin>>m;
if(!k||q[k-1]<m)q[k++]=m;
else{
int l=0,r=k-1;
while(l<=r){
int mid=(l+r)/2;
if(q[mid]<m)l=mid+1;
else r=mid-1;
}
q[l]=m;
}
}
cout<<k;
}