A94852.Knapsack 2

普及/提高-

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

NN 个物品,编号为 1,2,,N1, 2, \ldots, N。对于每个 ii (1iN1 \leq i \leq N),物品 ii 的重量是 wiw_i,价值是 viv_i

太郎君决定从这 NN 个物品中挑选一些放入背包带回家。背包的容量为 WW,这意味着所选物品的总重量不能超过 WW

请计算太郎君能带回的物品的最大总价值。

输入格式

第一行包含两个整数 NNWW,分别表示物品的数量和背包的容量。

接下来 NN 行,每行包含两个整数 wiw_iviv_i,表示第 ii 个物品的重量和价值。

输出格式

输出一个整数,表示太郎君能带回的物品的最大总价值。

输入输出样例

  • 输入#1

    3 8
    3 30
    4 50
    5 60

    输出#1

    90
  • 输入#2

    1 1000000000
    1000000000 10

    输出#2

    10
  • 输入#3

    6 15
    6 5
    5 6
    6 4
    6 6
    3 5
    7 2

    输出#3

    17

说明/提示

数据范围

  • 所有输入均为整数。
  • 1N1001 \leq N \leq 100
  • 1W1091 \leq W \leq 10^9
  • 1wiW1 \leq w_i \leq W
  • 1vi1031 \leq v_i \leq 10^3

样例解释 1

可以选择物品 1133。此时总重量为 3+5=83 + 5 = 8,总价值为 30+60=9030 + 60 = 90

样例解释 3

可以选择物品 2,4,52, 4, 5。此时总重量为 5+6+3=145 + 6 + 3 = 14,总价值为 6+6+5=176 + 6 + 5 = 17

首页