Pagini recente » Cod sursa (job #2524235) | Cod sursa (job #1209252) | Cod sursa (job #1971253) | Cod sursa (job #2313603) | Cod sursa (job #1849699)
#include <fstream>
using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
int prof[10005];
struct proiect{
int p,g;
};
proiect v[10005];
int main()
{
int g,i,j,n;
cin>>n>>g;
for(i=1;i<=n;i++)
cin>>v[i].g>>v[i].p;
for(j=1;j<=g;j++)
prof[j]=-1;
prof[0]=0;
for(i=1;i<=n;i++)
for(j=g-v[i].g;j>=0;j--)
if(prof[j]!=-1 && prof[j]+v[i].p>prof[j+v[i].g])
prof[j+v[i].g]=prof[j]+v[i].p;
int max=0;
for(i=1;i<=g;i++)
if(prof[i]>max)
max=prof[i];
cout<<max;
return 0;
}