Pagini recente » Cod sursa (job #2999228) | Cod sursa (job #1427811) | Cod sursa (job #385774) | Cod sursa (job #1581308) | Cod sursa (job #2480773)
#include <bits/stdc++.h>
#define MOD 194767
using namespace std;
ifstream in("rucsac.in");
ofstream out("rucsac.out");
struct Obiect
{
int w, p;
}O[5010];
int n, g, sol[5010][5010], gm;
int main()
{
in >> n >> g;
for(int i = 1;i <= n;i++)
in >> O[i].w >> O[i].p;
for(int i = 1;i <= n;i++)
for(int gm = 0;gm <= g;gm++)
{
if(gm >= O[i].w) sol[i][gm] = max(sol[i - 1][gm], sol[i - 1][gm - O[i].w] + O[i].p);
else sol[i][gm] = sol[i - 1][gm];
}
out << sol[n][g];
return 0;
}