好的,我将题目中的数字和数学表达式用 ... 标出。
题目描述
给定一个含 N 个元素的数组 A,下标从 1 开始。请找出下面式子的最大值:
$$(A[l_1] \oplus A[l_1+1] \oplus \dots \oplus A[r_1]) + (A[l_2] \oplus A[l_2+1] \oplus \dots \oplus A[r_2])$$
其中 1≤l1≤r1<l2≤r2≤N,x⊕y 表示 x 和 y 的按位异或。
输入格式
第一行一个整数 N,表示数组中的元素个数。
第二行包含 N 个整数 A1,A2,…,AN。
输出格式
输出一行,包含给定表达式可能的最大值。
数据范围
- N≤400000
- Ai≤231−1
输入样例
5
1 2 3 1 2
输出样例
6
样例解释
数组 A=[1,2,3,1,2]。
满足条件 1≤l1≤r1<l2≤r2≤5 的分割方式中:
-
(l1,r1,l2,r2)=(1,2,3,3)
第一段异或和:1⊕2=3
第二段异或和:3
总和:3+3=6
-
(1,2,4,5)
第一段异或和:1⊕2=3
第二段异或和:1⊕2=3
总和:6
-
(3,3,4,5)
第一段异或和:3
第二段异或和:1⊕2=3
总和:6
最大值为 6。
输出 6。
这样题目就完整了,所有数字和数学表达式都用 ... 标出。