目前已知这组数据过不了,但我不知道怎么解决
9
2 7 1 5 6 4 3 8 9
错误代码
#include<bits/stdc++.h>
using namespace std;
int n,len,a[100010],low[100010],l,r,mid;
int main()
{
low[0]=-100000000;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
if(low[len]>=a[i]){
l=1;
r=len;
while(l<=r){
mid=int((l+r)/2);
if(low[mid]<=a[i]) l=mid+1;
if(low[mid]>a[i]) r=mid-1;
}
if(low[mid]<=a[i]) mid++;
if(low[mid]>a[i]){
low[mid]=a[i];
len=mid;
/*cout<<len<<endl;
for(int i=1;i<=len;i++){
cout<<low[i];
}
cout<<endl;*/
}
}
if(low[len]<a[i]){
len++;
low[len]=a[i];
/*cout<<len<<endl;
for(int i=1;i<=len;i++){
cout<<low[i];
}
cout<<endl;*/
}
}
/*for(int i=1;i<=len;i++){
cout<<low[i]<<' ';
}*/
cout<<len;
return 0;
}