题目描述
给出 n 个非负整数 a1,a2,an 。你需要将这些数分为若干组,满足 n 个数中的每一个数都恰好被分到了一个组中,且每一组至少包含一个数。
定义一组数的异或和为将数组中所有的数异或起来得到的结果(即若数 x,y,z 为一组,这一组的异或和为x⊕y⊕z)。
请找出一种分组方案,使得分出的所有组数的异或和的和最小,并输出异或和的和的最小值。
输入格式
输入的第一行包含一个正整数 n,表示给定的非负整数的数量。
接下来一行包含 n 个非负整数 a1,a2an。
输出格式
输出一行一个整数表示答案。
输入样例1
3
1 3 8
输出样例1
10
输入样例2
6
9 9 18 25 32 36
输出样例2
15