Pagini recente » Cod sursa (job #620592) | Cod sursa (job #1985404) | Cod sursa (job #2838267) | Cod sursa (job #911456) | Cod sursa (job #2589315)
#include <bits/stdc++.h>
using namespace std;
ifstream ci("rucsac.in");
ofstream cou("rucsac.out");
int n,G,v[6000],g[6000];
int dp[2][10005];
void citire()
{
ci>>n>>G;
int i;
for(i=1; i<=n; i++)
{
ci>>g[i]>>v[i];
}
}
void rez()
{
int i,j,r=1;
int s=0;
for(i=1; i<=n; i++)
{
r=1-r;
for(j=0; j<=G; j++)
{
dp[r][j]=dp[1-r][j];
if(j>=g[i])
{
dp[r][j]=max(dp[1-r][j],dp[1-r][j-g[i]]+v[i] );
}
}
}
for(i=n,j=0; j<=G; j++)
{
s=max(s,dp[r][j]);
}
cou<<s;
}
int main()
{
citire();
rez();
return 0;
}