#include #include using namespace std; const int maxn = 120000; struct so { int x , i; } s[maxn]; int n; int a[maxn] , ex[maxn]; int ans; bool cmp ( so x1 , so x2 ) { return x1.x < x2.x; } void clear () { int i; for ( i = 1 ; i <= n ; i++ ) ex[i] = 0; } void work () { int i , j , k , last; scanf ( "%d" , &n ); clear (); for ( i = 1 ; i <= n ; i++ ) { scanf ( "%d" , &s[i].x ); s[i].i = i; } sort ( s + 1 , s + 1 + n , cmp ); k = 0; for ( i = 1 ; i <= n ; i++ ) { if ( i == 1 || s[i].x != s[i-1].x ) k++; a[s[i].i] = k; } last = 1; ans = 1; for ( i = 1 ; i <= n ; i++ ) { if ( ex[a[i]] ) { for ( j = last ; j <= i - 1 ; j++ ) ex[a[j]] = 0; last = i; ans++; } ex[a[i]] = 1; } printf ( "%d\n" , ans ); } int main () { int t; scanf ( "%d" , &t ); while ( t-- ) work (); return 0; }