#P0980. 相邻异或和

相邻异或和

题目描述

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

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

其中 \oplus 表示按位异或。

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

输入格式

第一行一个整数 NN2N82 \le N \le 8)。

第二行 NN 个整数 A1,A2,,ANA_1, A_2, \dots, A_N0Ai1050 \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=31+3=41+3=4,异或 34=73 \oplus 4 = 7

排列 (3,1,2)(3,1,2):相邻和为 4433,异或 43=74 \oplus 3 = 7

其他排列均小于 77