Pagini recente » Cod sursa (job #1464254) | Cod sursa (job #635457) | Diferente pentru problema/s2c intre reviziile 36 si 16 | Cod sursa (job #2662969) | Cod sursa (job #1679616)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in ("rucsac.in");
ofstream out("rucsac.out");
int n,G;
int v[10005];
struct obiect
{
int g,c;
};
obiect a[5005];
int main()
{
int i,j,maxim=0;
in>>n>>G;
for(i=1; i<=n; i++)
{
in>>a[i].g>>a[i].c;
}
for(i=1; i<=n; i++)
for(j=G-a[i].g ; j>=0; j--)
{
v[j+a[i].g]=max(v[j]+a[i].c , v[j+a[i].g ]);
if(v[j+a[i].g]>maxim)
maxim=v[j+a[i].g];
}
out<<maxim;
return 0;
}