Pagini recente » Cod sursa (job #1760929) | Cod sursa (job #2357241) | Cod sursa (job #1575347) | Cod sursa (job #2288239) | Cod sursa (job #2778210)
#include <iostream>
using namespace std;
int main()
{ int n, G, cnst = -1, profit[5000],p[5000], g[5000];
cin >> n>> G;
for(int i = 1; i <= n; i++)
cin >> g[i] >> p[i];
for(int j = 0; j<=G; j++)
profit[j] = -1;
profit[0] = 0;
for ( int i = 1; i<=G; i++)
for( int j = G; j>=g[i]; j--)
if(profit[j-g[i]]!= -1 )
profit[j] = max(profit[j],profit[j-g[i]]+p[i]);
cout<< profit[G];
return 0;
}