#P832. 【基础】分组背包问题
【基础】分组背包问题
题目描述
有 组物品和一个容量为 的背包。每组物品有若干个,同一组内的物品最多只能选一个。每件物品的体积是 ,价值是 ,其中 是组号, 是组内编号。求解将哪些物品装入背包,可使物品总体积不超过背包容量,且总价值最大。输出最大价值。
输入格式
第一行有两个整数 ,用空格隔开,分别表示物品组数和背包容量。
接下来有 组数据:
- 每组数据的第一行有一个整数 ,表示第 个物品组的物品数量;
- 接下来 行,每行有两个整数 ,用空格隔开,分别表示第 组第 个物品的体积和价值。
输出格式
一个整数,表示最大价值。
样例
3 5
2
1 2
2 4
1
3 4
3
1 3
2 5
3 3
8
样例解释
共有 组物品,背包容量为 。一种最优选择为:
- 第 组选第 件物品(体积 ,价值 );
- 第 组选第 件物品(体积 ,价值 );
- 第 组不选。 总体积 ,总价值 ,为最大值。