These problems are from the atcoder DP contest, and were transferred onto DMOJ. All problem statements were made by several atcoder users. As there is no access to the test data, all data is randomly generated. If there are issues with the statement or data, please contact or on slack.
There are ~N~ items, numbered ~1, 2, \dots, N~. For each ~i~ ~(1 \le i \le N)~, item ~i~ has a weight of ~w_i~ and a value of ~v_i~.
Taro has decided to choose some of the ~N~ items and carry them home in a knapsack. The capacity of the knapsack is ~W~, which means that the sum of the weights of items taken must be at most ~W~.
Find the maximum possible sum of the values of items that Taro takes home.
- All values in input are integers.
- ~1 \le N \le 100~
- ~1 \le W \le 10^9~
- ~1 \le w_i \le W~
- ~1 \le v_i \le 10^3~
The first line of input will contain 2 space separated integers, ~N~ and ~W~.
The next ~N~ lines will contain 2 space separated integers, ~w_i~ and ~v_i~, the weight and value of item ~i~.
You are to output a single integer, the maximum possible sum of the values of items that Taro takes home.
Sample Input 1
3 8 3 30 4 50 5 60
Sample Output 1
Sample Input 2
1 1000000000 1000000000 10
Sample Output 2
Sample Input 3
6 15 6 5 5 6 6 4 6 6 3 5 7 2
Sample Output 3
For the first sample, items ~1~ and ~3~ should be taken. Then, the sum of the weights IS ~3 + 5 = 8~, and the sum of the values is ~30 + 60 = 90~.
For the third sample, items ~2~, ~4~, and ~5~ should be taken. Then, the sum of the weights is ~5 + 6 +3 = 14~, and the sum of the values is ~6 + 6 + 5 = 17~.