Pagini recente » Cod sursa (job #1024521) | Cod sursa (job #2983752) | Cod sursa (job #1629167) | Cod sursa (job #171827) | Cod sursa (job #2928313)
#include <fstream>
#define INF 50000000
using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
long long b[10001];
int main()
{
int n,i,j;
int maxi=0;
int G,g,p;
cin>>n>>G;
for(i=1;i<=G;i++)
{
b[i]=-INF;
}
for(j=1;j<=n;j++)
{
cin>>g;
cin>>p;
for(i=min(G-g,maxi);i>=0;i--)
{
if(b[i+g]<b[i]+p)
b[i+g]=b[i]+p;
if(i+g>maxi)
maxi=i+g;
}
}
i=maxi;
maxi=0;
for(;i>=0;i--)
{
if(b[i]>maxi)
maxi=b[i];
}
cout<<maxi;
return 0;
}