#1472. 01背包

01背包

01背包

题目描述

给定nn个物品,如何得到背包容量分别为11,22,\ldots,mm的最大价值(每一件物品只能取一次,不同的背包容量相互之间均为独立的问题)。

输入格式

第一行两个正整数nnmm,代表物品数量和背包的最大容量;

接下来nn行,每行两个整数ssvv,分别代表每个物品的体积和价值。

输出格式

输出mm个数,分别表示背包容量为11,22,33,\ldots,mm时的最大价值。

数据范围与提示

  • 对于20%20\%的数据,n×m<100000n \times m < 100000
  • 对于100%100\%的数据,1n1061 \leq n \leq 10^{6}1m1051 \leq m \leq 10^{5}1<s<3001 < s < 3001v1091 \leq v \leq 10^{9}

样例

4 9
2 8
1 1
3 4
5 100
1 8 9 9 100 101 108 109 109