Pagini recente » Cod sursa (job #1333912) | Cod sursa (job #479965) | Cod sursa (job #666067) | Cod sursa (job #2189634) | Cod sursa (job #1164854)
#include <fstream>
using namespace std;
ifstream in("rucsac.in");
ofstream out("rucsac.out");
int w[5001] , c[5001] , d[10001];
int main()
{
int n , g , i , j;
in>>n>>g;
for(i = 1 ; i <= n ; i++)
in>>w[i]>>c[i];
for (j = 1; j <= g; j++)
d[j] = -1;
d[0] = 0;
for(i = 1 ; i <= n ; i++)
for(j = g; j >= w[i] ; j--)
{
if(d[j - w[i]] >= 0)
d[j] = max(d[j] , d[j - w[i]] + c[i]);
}
out<<d[g]<<'\n';
return 0;
}