Pagini recente » Cod sursa (job #558433) | Cod sursa (job #949628) | Cod sursa (job #940673) | Cod sursa (job #1330422) | Cod sursa (job #2329799)
#include<iostream>
#include<fstream>
#include<algorithm>
using namespace std;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
int G,n,i,j,x,p,s,dp[5002];
int main()
{
fin>>n>>G;
for(i=1; i<=n; i++)
{
fin>>x>>p;
for(j=G-x; j>=1; j--)
{
if(dp[j]!=0 && dp[j+x]<dp[j]+p)
dp[j+x]=dp[j]+p;
}
dp[x]=max(p,dp[x]);
}
for(i=1; i<=G; i++)
s=max(s,dp[i]);
fout<<s;
}