过个年太吵了,今天才回归正轨。一般思路即可通关,每个元素都考虑一次,计算其他所有元素的异或判断是否相等即可。

可以通过旋转队列实现

from collections import deque
T = int(input())

for _ in range(T):
    n = int(input())
    a = deque(map(int,input().split()))
    f = False
    i = 0
    res = 0
    while not f and i != n:
	  #计算除开第一个所有元素的异或
        x = 0
        for j in range(1,n):
            x = x ^ a[j]
		#判断是否等于假定的新元素
        if x == a[0]:
            f = True
            res = x
            break
			#找到了就停止循环
		#找不到就旋转序列,考虑下一个元素
        a.rotate(1)
        i += 1
    print(res)