#P0980. 相邻异或和

相邻异或和

题目描述

给定 NN 个整数,将它们重新排列成一个序列,定义该序列的权值为:

$$(a_1 + a_2) \oplus (a_2 + a_3) \oplus \dots \oplus (a_{N-1} + a_N)$$

其中 ⊕\oplus 表示按位异或。

请你找出一种排列,使得权值最大,并输出这个最大权值。

输入格式

第一行一个整数 NN(2≤N≤82 \le N \le 8)。

第二行 NN 个整数 A1,A2,…,ANA_1, A_2, \dots, A_N(0≤Ai≤1050 \le A_i \le 10^5)。

输出格式

一个整数,表示最大权值。

样例

3
1 2 3
7
3
3 2 1
7

样例1解释

排列 (2,1,3)(2,1,3):相邻和为 2+1=32+1=3 与 1+3=41+3=4,异或 3⊕4=73 \oplus 4 = 7;

排列 (3,1,2)(3,1,2):相邻和为 44 与 33,异或 4⊕3=74 \oplus 3 = 7。

其他排列均小于 77。