Pagini recente » Cod sursa (job #1861752) | Cod sursa (job #1165472) | Cod sursa (job #2982695) | Cod sursa (job #1044067) | Cod sursa (job #1711957)
#include <iostream>
#include <stdlib.h>
#include <stdio.h>
using namespace std;
int v[10001];
int maxim (int a, int b)
{
return a>b? a:b;
}
int main ()
{
int n,g,w,p;
freopen ("rucsac.in", "r", stdin);
freopen ("rucsac.out", "w", stdout);
cin>>n>>g;
for(int i=1;i<=n;i++)
{
cin>>w>>p;
for(int j=g;j>=1;j--)
{
if(v[j]!=0)
{
v[j+w]=maxim(v[j+w], v[j]+p);
}
}
v[w]=maxim(v[w],p);
}
int max=0;
for(int i=1;i<=g;i++)
{
max=maxim(v[i],max);
}
cout<<max<<endl;
return 0;
}