Pagini recente » Cod sursa (job #1693484) | Cod sursa (job #2236738) | Cod sursa (job #2919856) | Cod sursa (job #2072845) | Cod sursa (job #2340372)
#include <fstream>
using namespace std;
int dp[10001], p[5001], g[5001];
int main() {
ifstream cin ("rucsac.in");
ofstream cout ("rucsac.out");
int n, G, i, j, sol;
cin >> n >> G;
for (i = 0; i < n; i++)
cin >> g[i] >> p[i];
sol = 0;
for (j = 0; j < n; j++) {
for (i = G; i >= 1; i--) {
if (g[j] <= i) {
dp[i] = max(dp[i], dp[i - g[j]] + p[j]);
sol = max(sol, dp[i]);
}
}
}
cout << sol;
return 0;
}