1 #include2 #include 3 #include 4 #include 5 using namespace std; 6 7 int tom,root,wi; 8 typedef struct node 9 {10 int a[2];11 int i;12 int num;13 }Tril;14 Tril f[100003<<5];15 16 void insert(int x,int rt,int wz)17 {18 int i,k;19 for(i=21;i>=0;i--)20 {21 k=( (1< =0;i--)33 {34 k=( (1< tom )41 {42 tom=cur^x;43 wi=i;44 }45 }46 47 int main()48 {49 int T,n;50 int i,hxl,x;51 scanf("%d",&T);52 while(T--)53 {54 scanf("%d",&n);55 hxl=0;56 tom=0;57 root=1;58 memset(f,-1,sizeof(Tril)*((n<<5)+1));59 for(i=1;i<=n;i++)60 {61 scanf("%d",&x);62 hxl=hxl^x;63 query(hxl,1,i);64 insert(hxl,1,i);65 }66 printf("%d\n",tom);67 }68 return 0;69 }