传送门
T4. 搬砖
给定 \(n\) 个非负整数 \(a_i\),每次可以花费 \(1\) 的代价使得一个数字加 \(1\) 或者减 \(1\)(不能被减到负数),问最少需要多少代价使得所有数字的异或值为 \(0\) 。
要求多测
限制:
- 对于 \(5\%\) 的数据:\(n=2, a_i \leqslant 10^9\)
- 对于另外 \(10\%\) 的数据:\(n \leqslant 5\),\(a_i \leqslant 30\)
- 对于另外 \(15\%\) 的数据:\(n \leqslant 15\),\(a_i \leqslant 10^3\)
- 对于另外 \(20\%\) 的数据:\(n \leqslant 8\),\(a_i \leqslant 10^9\)
- 对于另外 \(15\%\) 的数据:\(n \leqslant 10\),\(a_i \leqslant 10^9\)
- 对于所有数据:\(1 \leqslant T \leqslant 6, 1 \leqslant n \leqslant 15, 0 \leqslant a_i \leqslant 10^9\)
参考难题:蓝
算法分析
下文中,假定 \(m = \max(a_i)\)
5分:
此时 \(n = 2\),问题变为了使得两数相等的最小代价,输出两数的差值即可。
