15 lines
410 B
TypeScript
15 lines
410 B
TypeScript
export {};
|
|
const input = require("fs").readFileSync(0).toString().trim().split("\n");
|
|
|
|
const [N, K]: number[] = input[0].split(" ").map(Number);
|
|
let items: number[][] = Array.from({length: N}, (_, i) => input[i+1].split(" ").map(Number));
|
|
|
|
let dp: number[] = Array(K+1).fill(0);
|
|
|
|
for(let [w,v] of items) {
|
|
for(let k=K; k>=w; k--) {
|
|
dp[k] = Math.max(dp[k-w] + v, dp[k]);
|
|
}
|
|
}
|
|
|
|
console.log(dp[K]); |