AT_dp_d Knapsack 1
Description
[problemUrl]: https://atcoder.jp/contests/dp/tasks/dp_d
$ N $ 個の品物があります。 品物には $ 1,\ 2,\ \ldots,\ N $ と番号が振られています。 各 $ i $ ($ 1\ \leq\ i\ \leq\ N $) について、品物 $ i $ の重さは $ w_i $ で、価値は $ v_i $ です。
太郎君は、$ N $ 個の品物のうちいくつかを選び、ナップサックに入れて持ち帰ることにしました。 ナップサックの容量は $ W $ であり、持ち帰る品物の重さの総和は $ W $ 以下でなければなりません。
太郎君が持ち帰る品物の価値の総和の最大値を求めてください。
Input Format
N/A
Output Format
N/A
Explanation/Hint
### 制約
- 入力はすべて整数である。
- $ 1\ \leq\ N\ \leq\ 100 $
- $ 1\ \leq\ W\ \leq\ 10^5 $
- $ 1\ \leq\ w_i\ \leq\ W $
- $ 1\ \leq\ v_i\ \leq\ 10^9 $
### Sample Explanation 1
品物 $ 1,\ 3 $ を選べばよいです。 すると、重さの総和は $ 3\ +\ 5\ =\ 8 $ となり、価値の総和は $ 30\ +\ 60\ =\ 90 $ となります。
### Sample Explanation 2
答えは 32-bit 整数型に収まらない場合があります。
### Sample Explanation 3
品物 $ 2,\ 4,\ 5 $ を選べばよいです。 すると、重さの総和は $ 5\ +\ 6\ +\ 3\ =\ 14 $ となり、価値の総和は $ 6\ +\ 6\ +\ 5\ =\ 17 $ となります。