Pagini recente » Cod sursa (job #1702530) | Cod sursa (job #1768319)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("rucsac.in");
ofstream out("rucsac.out");
const int maxn = 5005;
int D[10005];
int g[maxn];
int p[maxn];
int main()
{
int n, G;
in >> n >> G;
for(int i = 1; i <= n; i++)
in >> g[i] >> p[i];
for(int i = 1; i <= n; i++)
{
for(int j = G; j >= g[i]; j--)
D[j] = max(D[j], D[j - g[i]] + p[i]);
}
int mx = 0;
for(int i = 1; i <= G; i++)
mx = max(mx, D[i]);
out << mx << "\n";
return 0;
}