C. 徐老师的背包问题

    传统题 1000ms 256MiB

徐老师的背包问题

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

徐老师最近刚学习了《背包九讲》

其中有一种《二维背包问题》是这样的:

一共有 nn 个物品,每个物品有三种属性:h,v,wh,v,w,分别代表重量,体积和价值

一个背包的属性有两个:H,VH,V 分别表示背包能承受的重量上限 HH 和体积上限 VV,即物品重量之和 H\leq H,物品体积之和 V\leq V,问最多能装进背包的物品总价值最大是多少。

这个问题可太简单了,徐老师分分钟就 AC 了,但是徐老师总是有一些神奇的想法

于是他开始思考,如果他拥有的是一个神奇背包会如何呢?

这个神奇背包允许徐老师在开始装物品之前可以选择一个自然数 xx,使得 Hx,V+xH-x,V+x,然后再进行物品的选择

现在徐老师想知道,如果他使用的是这个神奇背包,他能装进背包的物品总价值最大是多少?

输入格式

输入第一行包含三个整数 n,H,Vn,H,V 表示一共有 nn 个物品,背包重量上限 HH,体积上限 VV

接下来 nn 行,每行三个整数 hi,vi,wih_i,v_i,w_i,分别表示第 ii 个物品的重量,体积和价值

输出格式

输出一个整数表示最大价值

数据范围

测试点编号 nn H,VH,V
131 \sim 3 10\le 10 H,V300H,V\leq 300
474 \sim 7 20\le 20
8108 \sim 10 50\le 50 H,V50H,V\leq 50
111311 \sim 13 1000\le 1000 H300,V=0H\leq 300, V=0
141614 \sim 16 V300,H=0V\leq 300, H=0
172017 \sim 20 H,V300H,V\leq 300

特别的,对于所有数据保证:1wi109,0hi,vi3001\leq w_i \leq 10^9, 0\leq h_i,v_i \leq 300

样例输入

5 10 10
0 1 8
2 3 7
4 5 9
10 10 10
5 5 8

样例输出

25

样例解释

徐老师在开始前可以选择 x=1x=1,那么背包就会变成 H=9,V=11H=9,V=11,然后选择 1,3,51,3,5 三个物品得到最大价值 2525

2025CSP-S暑假模拟赛八

未参加
状态
已结束
规则
IOI
题目
4
开始于
2025-8-7 21:30
结束于
2025-8-17 21:30
持续时间
240 小时
主持人
参赛人数
20