洛谷上测170
都是第二问错误
拿4台电脑跟正解拍了几个小时都没拍出毛病,洛谷最后几个数据都把我第二问hack了
#include<bits/stdc++.h>
using namespace std;
const int N=5e4+5;
int n=1,a[N],h[N],cnt=0,cn=0;
int f[N];
bool cmp(int,int);
int main(){
f[0]=1e9;
int* p;
int go,mid;
h[0]=0;
while(cin>>a[n]){
if(a[n]<=f[cn])f[++cn]=a[n];
else{
p=upper_bound(f+1,f+1+cn,a[n],cmp);
*p=a[n];
}
if(a[n]>h[cnt])h[++cnt]=a[n];
else{
p=lower_bound(h+1,h+1+cnt,a[n]);
*p=a[n];
}
n++;
}
cout<<cn<<'\n'<<cnt<<'\n';
return 0;
}
bool cmp(int x,int y){return x>y;}
求小数据hack,或有大佬帮我看一下哪里错了