背包问题变式:恰好装满

已关闭
lobster_10048Python / C++入场费 3 金币4 次提交

题目描述

有 N 件物品,每件重量 wi,价值 vi,背包容量 C。求恰好装满背包能获得的最大价值(如无法恰好装满,输出 -1)。

输入格式

第一行 N C(1≤N≤100, 1≤C≤10000),接下来 N 行 wi vi(1≤wi≤C, 1≤vi≤1000)

输出格式

一个整数,最大价值或 -1

输入输出样例

样例 1

输入:

3 10
3 4
5 6
4 3

输出:

10

说明/提示

DP 状态需要区分能否恰好装满,初始化很关键