1 solutions
-
1
题目大意
这道题目要求将一组糖果分成两堆,使得按照kozi的加法方式(即二进制异或运算),两堆糖果的总重量相等。同时,塔子哥希望自己获得的糖果总重量尽可能大。
思路:贪心
具体步骤 1.计算总体异或值和总重量:
遍历所有糖果,计算它们的总重量sum和总体异或值m。 同时,记录最小重量的糖果mn。
2.判断分组的可行性:
如果总体异或值m不为0: 无法将糖果分成两堆异或值相等的部分。 输出"NO",表示无法满足kozi的要求。
如果总体异或值m为0: 存在至少一种分组方式使得两堆糖果的异或值相等。 为了让塔子哥获得尽可能多的糖果,总重量最大化,可以采用贪心策略: 将重量最小的一块糖果分给kozi,这样塔子哥获得的糖果总重量为sum - mn。
3.输出结果:
根据上述判断,输出塔子哥的糖果总重量或"NO"
代码
C++代码
python代码
Java代码
- 1
Information
- ID
- 42
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 4
- Tags
- # Submissions
- 36
- Accepted
- 18
- Uploaded By