Pagini recente » Cod sursa (job #2809113) | Cod sursa (job #2591734) | Cod sursa (job #2907801) | Cod sursa (job #1349343) | Cod sursa (job #2137061)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
int dp[10005],greutate[10005],pret[10005],n,gmax,sol,i,j;
int main()
{
f>>n>>gmax;
for(i=1; i<=n; i++)
f>>greutate[i]>>pret[i];
for(j=1; j<=n; j++)
{
for(i=gmax; i>=0; i--)
if((i+greutate[j])<=gmax)
dp[i+greutate[j]]=max(dp[i+greutate[j]],pret[j]+dp[i]);
}
for(int i=gmax;i>=1;i--)
sol=max(sol,dp[i]);
g<<sol;
return 0;
}