#C1028. T2分组(distribution)
T2分组(distribution)
题目描述
现在有 n 个非负整数 ,你需要将这些数分成若干组,满足 n 个数中的每一个数都恰好被分到了一个组中,且每一组至少包含一个数。
定义一组数的权值为该组内所有数的异或和。请求出一种分组方案,使得分出的所有组数的权值之和最小,输出权值之和的最小值。
输入格式
在文件 distribution.in 中读入。
第一行输入一个正整数 n。
第二行输入n个整数 ,表示 n 个非负整数。
输出格式
在文件 distribution.out 中输出。
输出一个整数,表示权值之和的最小值。
样例
样例输入 #1
3
1 2 5
[Copy](javascript:;)
样例输出 #1
6
[Copy](javascript:;)
样例 1 解释
一种最优的分组方案如下:
- 将第 1 个数和第 3 个数分为一组,该组的权值为 4
- 将第 2 个数分为一组,该组的权值为 2
该分组方案的所有组的权值之和为 4 + 2 = 6.
大样例在sample/distribution文件夹下
数据范围
对于 20% 的数据,
对于 100% 的数据,
Related
In following contests: