Pagini recente » Borderou de evaluare (job #506228) | Borderou de evaluare (job #1294238) | Borderou de evaluare (job #515026) | Diferente pentru utilizator/marcelcodrea intre reviziile 95 si 18 | Cod sursa (job #1493643)
#include <fstream>
using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
#define MAXN 5010
int n,g,i,j;
int greutate[MAXN],profit[MAXN],dp[10005];
int main()
{
cin>>n>>g;
for(i=1; i<=n; i++)
cin>>greutate[i]>>profit[i];
for(i=1; i<=n; i++)
{
for(j=greutate[i]; j<=g; j++)
{
if(dp[j-greutate[i]] < dp[j] + profit[i])
dp[j-greutate[i]]= dp[j]+profit[i];
}
}
cout<<dp[0];
}