Pagini recente » Cod sursa (job #1708553) | Cod sursa (job #3228874) | Cod sursa (job #1815760) | Cod sursa (job #2377829) | Cod sursa (job #2203404)
#include<iostream>
#include<cstdio>
using namespace std;
int n,d[10001],i,G,val,g,j,sol;
int main()
{
freopen("rucsac.in","r",stdin);
freopen("rucsac.out","w",stdout);
cin>>n>>G;
for(i=1;i<=G;i++) d[i]=-1;
for(i=1;i<=n;i++)
{
cin>>g>>val;
for(j=G;j>=0;j--)
if(d[j]!=-1)
if(j+g<=G)
if(d[j]+val>d[j+g]) d[j+g]=d[j]+val;
}
for(i=0;i<=G;i++) if(d[i]>sol) sol=d[i];
cout<<sol;
return 0;
}