#Y1023. 【例9.16】分组背包
时间限制1000 ms
内存限制64 MiB
通过率—0 / 0 次提交
题目描述
一个旅行者有一个最多能装V公斤的背包,现在有n件物品,它们的重量分别是,它们的价值分别为。这些物品被划分为若干组,每组中的物品互相冲突,最多选一件。求解将哪些物品装入背包可使这些物品的重量总和不超过背包容量,且价值总和最大。
输入
第一行:三个整数,V(背包容量,V≤200),N(物品数量,N≤30)和T(最大组号,T≤10); 第2..N+1行:每行三个整数,表示每个物品的重量,价值,所属组号。
输出
仅一行,一个数,表示最大总价值。
输入样例
10 6 3 2 1 1 3 3 1 4 8 2 6 9 2 2 8 3 3 9 3
输出样例
20
完整数据范围与边界约定
0≤V≤200,1≤N≤30,1≤T≤10。1≤W_i≤10^6,0≤C_i≤10^9,1≤P_i≤T;允许某些组没有物品。每组至多选一件,也可以不选;只限制所选重量总和≤V。最大总价值可能超过32位。
本地修订与来源
本题为经授权补全的本地训练修订版,原始公开题面保留在采集档案;修订了:0≤V≤200,1≤N≤30,1≤T≤10。1≤W_i≤10^6,0≤C_i≤10^9,1≤P_i≤T;允许某些组没有物品。每组至多选一件,也可以不选;只限制所选重量总和≤V。最大总价值可能超过32位。。此处题意、范围和输出约定以本修订版为准,不冒称原站或官方原版。原题链接:https://ybt.ssoier.cn/problem_show.php?pid=1272。
评测数据说明
本题使用按题意独立构造、以独立程序核对的训练数据及公开样例,共5个测试点,非原站或官方原始数据。总分100分。