#P999. 最大卡路里

    ID: 2560 传统题 1000ms 128MiB 尝试: 3 已通过: 3 难度: 3 上传者: 标签>动态规划背包算法普及二维背包顺序结构

最大卡路里

题目描述

神州飞船准备运送一批食品到太空站,该飞船能够运送食品的重量、体积都有严格的限制。

现已知 nn 件完全不同的食品,每种食品的重量、体积及该食品能够提供的卡路里的值,请你编程计算出,该飞船最多能够运送多少卡路里的食物?

输入格式

第一行:两个整数,分别表示飞船能够装载食物的体积最大值质量最大值

第二行:一个整数 NN,表示食品总数。

接下来 NN 行:每行三个整数,依次表示第 ii 件食品的体积质量所含卡路里

输出格式

一个整数,表示所能达到的最大卡路里值。

样例

320 350
4
160 40 120
80 110 240
220 70 310
40 400 22
550

提示

样例解释

飞船限制:体积 320320,质量 350350

最优方案:选择第 22 件 + 第 33 件食品。

总体积:80+220=30032080+220=300\le 320,总质量:110+70=180350110+70=180\le 350,总卡路里:240+310=550240+310=550(最大值)。

数据范围

最大体积 <400< 400

最大质量 <400< 400

食品总数 N<50N< 50

单种食品的体积、质量 <400< 400,卡路里 <500< 500

来源

动态规划 二维背包