#include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long ll; #define mem(x,y) memset(x,y,sizeof(x)) #define lowbit(x) (x & (-x)) const int N1=101000,MAX=10001000; struct Tree{ int l,r; }tr[N1]; int value[N1],depth[N1]; void dfs(int id){ for (int i=tr[id].l; i!=-1; i=tr[i].r){ depth[i]=depth[id]+1; dfs(i); } } int main(){ int t; scanf("%d",&t); while(t--){ depth[0]=1; mem(tr,-1); int n; scanf("%d",&n); for (int i=1; i