#6966. 夜间运输(transport)

夜间运输(transport)

夜间运输(transport)

题目描述

某物流公司准备安排一次夜间运输。

共有 n 件货物,每件货物都只能运输一次。

第 i 件货物的重量为 wi,运输收益为viw_i,运输收益为 v_i。

运输车辆最大承重为 VV。

由于运输通道的特殊检测要求,本次运输的货物总重量必须为奇数。

在总重量不超过 V 的条件下,求能够获得的最大运输收益。

如果无法满足要求,输出 -1。

输入格式

第一行两个整数 V,n。

接下来 nn 行,每行输入 wi,vi。

输出格式

输出最大运输收益,无解输出 -1。

输入样例

9 4
2 6
3 7
4 10
5 11

输出样例

23

样例解释

选择前三件货物,总重量为 2+3+4=9,是奇数,且没有超过运输车辆的最大承重。

获得收益 6+7+10=23。

数据范围

  • 1≤n≤100
  • 1≤V≤2000
  • 1≤wi≤2000
  • 1≤vi≤10000
测试点编号 层级 V n 特殊性质 标准输出 覆盖点与设计目的
1 弱数据 1 最小容量、单件物品 7 检查最小奇数重量及基础初始化
2 6 3 所有物品重量均为偶数 -1 无奇数总重量可达,检查 ans=-1
3 7 所有物品恰好全部选取 32 检查奇数容量、组合价值及边界 j=V
4 正常数据 9 2 单件物品不可重复选择 17 卡正序枚举造成的完全背包错误
5 10 5 超容量物品、重复重量 150 检查无效物品、同重量不同价值及组合选择
6 12 7 容量为偶数,最优奇数重量为 11 检查答案并非必须恰好装满,且只统计奇数重量
7 25 12 重量重复、组合较密集 125 检查多种方案竞争及状态更新正确性
8 极限数据 2004 40 V 达到数组允许的最大边界 4186 检查大容量、密集可达状态和数组边界