100
#LS1264. 【普及】异或子数组

【普及】异或子数组

【普及】异或子数组

给你一个长度为 nn 的整数数组 a[]a[],请你求出同时满足以下两个条件的 最长子数组 的长度 :

  • 1、子数组的按位异或(XOR)为 00
  • 2、子数组包含的 偶数奇数 数量相等。 如果不存在这样的子数组,则输出 00

子数组 是数组中的一个 连续非空 元素序列。

输入格式

第一行包含 11 个整数 TT,表示数据组数

每组数据的第一行包含 11 个整数 n(1n105n(1 \le n \le 10^{5})$

每组数据的第二行包含 nn 个整数 a1,a2,,an(1ai109)a_1, a_2, \ldots, a_n (1 \le a_i \le 10^9)

保证所有数据的 nn 之和不超过 2×1052 \times 10^5

输出格式

对于每组数据输出 11 行包含 11 个数,表示 最长子数组 的长度

3
5
3 1 3 2 0
8
3 2 8 5 4 14 9 15
1
0
4
8
0

提示

【样例 1 解释】

  • 子数组 [1,3,2,0][1, 3, 2, 0] 的按位异或为 1 ^ 3 ^ 2 ^ 0 = 0
  • 且包含 2 个偶数和 2 个奇数

【样例 2 解释】

  • 整个数组的按位异或为 00
  • 且包含 44 个偶数和 44 个奇数

【样例 3 解释】 没有非空子数组同时满足两个条件

【数据范围】

  • 1T1041 \le T \le 10^{4}
  • 1n1051 \le n \le 10^{5}
  • 0ai1090 \le a_i \le 10^9
  • 保证同一组内的 nn 之和不超过 2×1052 \times 10^5
请思考后再点击查看提示

来源