Pagini recente » Cod sursa (job #1011770) | Cod sursa (job #2693874) | Cod sursa (job #2672680) | Cod sursa (job #1188959) | Cod sursa (job #1843142)
#include <cstdio>
using namespace std;
int w[5005], p[5005];
int dp[10005];
int main() {
freopen("rucsac.in", "r", stdin);
freopen("rucsac.out", "w", stdout);
int n, g, sol = 0;
scanf("%d%d", &n, &g);
for(int i = 1; i <= n; ++ i) {
scanf("%d%d", &w[i], &p[i]);
}
for(int i = 1; i <= n; ++ i) {
for(int j = g - w[i]; j >= 0; -- j) {
if(dp[j + w[i]] < dp[j] + p[i]) {
dp[j + w[i]] = dp[j] + p[i];
if(dp[j + w[i]] > sol)
sol = dp[j + w[i]];
}
}
}
printf("%d", sol);
return 0;
}