Pagini recente » Cod sursa (job #2693793) | Cod sursa (job #114121) | Cod sursa (job #457562) | Cod sursa (job #2329873) | Cod sursa (job #2516374)
#include <fstream>
#define inf -1000
using namespace std;
ifstream in("rucsac.in");
ofstream out("rucsac.out");
const int lim=1e4+4;
int dp[lim];
int main()
{
ios_base::sync_with_stdio(false);
in.tie(0),out.tie(0);
int n,g,maxx=-1;
in>>n>>g;
for(int i=0;i<=g-1;++i)
dp[i]=inf;
dp[0]=0;
for(int i=1;i<=n;++i)
{
int w,profit;
in>>w>>profit;
for(int j=g;j>=0;--j)
if(dp[j]!=inf)
{
if(j+w<=g)
dp[j+w]=max(dp[j+w],dp[j]+profit);
}
}
for(int j=0;j<=g;++j)
if(dp[j]>maxx)
maxx=dp[j];
out<<maxx;
return 0;
}