Pagini recente » Cod sursa (job #2982759) | Cod sursa (job #2603966) | Cod sursa (job #450962) | Cod sursa (job #150309) | Cod sursa (job #2998709)
#include <fstream>
using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
int n, i,j,dp[2][10001],v[5001],g[5001], smax, Gmax,G,linie;
int main()
{
cin >>n>>Gmax;
for (i = 1; i <= n; i++)
cin >> g[i] >> v[i];
for (i = 1; i <= n; i++)
{
linie = !linie;
for (G = 1; G <= Gmax; G++)
{
if (g[i] <= G)
dp[linie][G] = max( dp[!linie][G - g[i]] + v[i], dp[!linie][G] );
else
dp[linie][G] = dp[!linie][G];
}
}
cout << dp[linie][Gmax];
}