#6975. 装箱验收(inspection)
装箱验收(inspection)
装箱验收(inspection)
题目描述
某物流中心需要准备一批特殊物资。
仓库中共有 (n) 种物资,第 (i) 种物资的重量为 。
在装箱前,仓库会将所有物资按重量从小到大排序,并从 1 开始重新编号。
如果重量相同,则按照输入顺序排列。
根据仓库的库存规定:
- 重新编号为奇数的物资,最多只能选择一件。
- 重新编号为偶数的物资,可以选择任意非负整数件。
此外,运输箱的验收系统规定:所有选中物资的总价值必须是奇数。
运输箱最大承重为 (V)。
在总重量不超过 (V) 的条件下,求能够获得的最大总价值。
如果无法满足验收要求,输出 -1。
输入格式
第一行包含两个整数 (n,V)。
接下来 (n) 行,每行输入两个整数 。
输出格式
输出最大合法总价值,无解输出 -1。
输入输出样例 #1
输入
4 10
5 9
2 3
4 7
3 5
输出
17
样例解释
排序后,重量为 3 的物资重新编号为 2,因此可以重复选择。
重量为 4 的物资重新编号为 3,因此最多选择一件。
选择两件重量为 3、价值为 5 的物资,以及一件重量为 4、价值为 7 的物资:
总重量为 (3+3+4=10)。
总价值为 (5+5+7=17),满足总价值为奇数的条件。
数据范围
统一说明
所有题目采用标准输入输出。
不同物品即使重量相同,也视为不同物品。每件物品或每种物资的可选择次数,以对应题目的具体规定为准。
建议时间限制:1~2 秒。
建议空间限制:128 MB。
| 测试点编号 | 层级 | n |
V |
特殊性质 | 标准输出 | 设计目的 |
|---|---|---|---|---|---|---|
| 1 | 弱数据 | 1 | 单个奇数价值物品 | 5 | 检查最小规模和奇数状态 | |
| 2 | 4 | 10 | 所有价值均为偶数 | -1 | 检查不存在奇数总价值方案 | |
| 3 | 基础数据 | 3 | 6 | 输入重量乱序 | 13 | 检查排序后的新编号决定物品类型 |
| 4 | 正常数据 | 4 | 10 | 0/1 与完全背包交替出现 | 39 | 检查两种枚举方向及奇偶转移 |
| 5 | 6 | 12 | 所有物品重量相同 | 109 | 检查同重量时按原编号排序及重复选择限制 | |
| 6 | 3 | 10 | 最优方案未装满容量,含超重物品 | 9 | 检查程序实际采用“不超过 V”的语义 |
|
| 7 | 较强数据 | 4 | 8 | 最大总价值方案为偶数 | 69 | 检查必须舍弃普通最优解、选择奇数价值方案 |
| 8 | 8 | 25 | 输入乱序,多种重量和价值奇偶混合 | 87 | 综合检查排序、物品类型与奇偶状态 | |
| 9 | 极限数据 | 2 | 2000 | 同重量、奇数价值完全背包 | 1998999998001 | 检查重复次数奇偶和 long long |
| 10 | 100 | 最大 n、最大容量、价值接近 int 上界 |
1998000000001 | 检查时间复杂度、容量边界和大数累加 | ||
相关
在以下作业中: