Pagini recente » Cod sursa (job #582426) | Cod sursa (job #50513) | Cod sursa (job #3204910) | Cod sursa (job #1452402) | Cod sursa (job #2780458)
#include<fstream>
using namespace std;
ifstream in("rucsac.in");
ofstream out("rucsac.out");
int g[5001],p[5001],pr[10001];
int main()
{
int n,k,i,j,ma=0;
in>>n>>k;
for(i=1;i<=n;i++)
in>>g[i]>>p[i];
for(j=1;j<=k;j++)
pr[j]=-1e9;
pr[0]=0;
for(i=1;i<=n;i++)
for(j=k;j>=g[i];j--)
if(pr[j-g[i]]!=-1e9)
pr[j]=max(pr[j],pr[j-g[i]]+p[i]);
for(i=k;i>=1;i--)
ma=max(ma,pr[i]);
out<<ma;
return 0;
}