Pagini recente » Cod sursa (job #922676) | Cod sursa (job #2737065) | Cod sursa (job #783398) | Cod sursa (job #1127897) | Cod sursa (job #2566780)
#include <fstream>
using namespace std;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
const int NMAX = 5000;
const int GMAX = 10000;
int N, G;
int w[NMAX + 5], p[NMAX + 5];
int dp[GMAX + 5];
int main()
{
fin >> N >> G;
for(int i = 1; i <= N; i++)
fin >> w[i] >> p[i];
for(int i = 1; i <= N; i++)
for(int g = G; g >= w[i]; g--)
dp[g] = max(dp[g], dp[g - w[i]] + p[i]);
fout << dp[G] << '\n';
return 0;
}