[Leaf] [CF2176C] Odd Process
cf2176c---odd-process">CF2176C - Odd Process
1. 核心逻辑
-
问题本质: 最大化保留在背包中的硬币面值和,硬币总和必须维持在奇数状态(若为偶数则被清空)。
-
破局转换:
-
不变量控制: 只有奇数能改变当前和的奇偶性。偶数仅贡献价值,不改变 Parity 状态。
-
贪心支点: 对奇数和偶数分别降序排列。优先摄入面值最大的奇数作为基底。
-
状态依赖:
- 背包容量 中,若偶数全部取完,剩余的名额必须用于成对摄入奇数,以维持“奇 + 偶 = 奇”的状态。
-
2. 代码实现
▶
AcCode
1 | |
3. 归档备注
-
复杂度: (排序瓶颈)。
-
坑点: 题目要求总和不能为偶数。注意初始状态 0 是偶数,意味着第一个硬币必须是奇数。
-
逻辑指纹: 本题展示了贪心与 Parity 状态机耦合时的处理方式——寻找那个能够“锁定”目标状态的核心算子(奇数)。
-
相关知识点:构造策略
[Leaf] [CF2176C] Odd Process
http://miqiu.space/posts/d244f6a5/