#include #include #include #define maxn 200009 using namespace std; int d[maxn],a[maxn],f[maxn],fa[maxn],next[maxn],tot,pos[maxn]; int bin(int L,int R,int x) { while(L>1; if(d[M]>=x) R=M; else L=M+1; } return R; } int main() { int n; int tt; scanf("%d",&tt); while(tt--) { scanf("%d",&n); for(int i=1;i<=n;i++) scanf("%d",&a[i]); int L,R; L=1;R=1;d[1]=a[1];f[1]=1; for(int i=2;i<=n;i++) { int j; if(a[i]>d[R]) j=++R; else j=bin(L,R,a[i]); d[j]=a[i];f[i]=j; } for(int i=1;i<=n;i++){ if(i