#include #include int x[100001],d[100001],c[100001]; int lis(int n){ int i,j,I; /* for(i=-1;I=0,++i c[sz]){ c[sz+1] = x[i]; d[i] = sz+1; sz++; }else{ int k = std::lower_bound(c,c+sz,x[i])-c; c[k] = x[i]; d[i] = k; } } for(i=j=0;id[j])j=i; return d[j]; } int n,i,T; int main(){ for(i=0,scanf("%d",&n);i