Pagini recente » Cod sursa (job #275286) | Cod sursa (job #3156200) | Cod sursa (job #338848) | Cod sursa (job #821382) | Cod sursa (job #3134898)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("back_rucsac.in");
ofstream fout("back_rucsac.out");
int main()
{
int G, N;
fin >> N >> G;
int g[500], p[500];
for (int i = 0; i < N; i++)
{
fin >> g[i] >> p[i];
}
int arr[500][500];
for (int i = 1; i <= N; i++)
{
for (int j = 1; j <= G; j++)
{
if (j < g[i - 1])
{
arr[i][j] = arr[i - 1][j];
}
else
{
arr[i][j] = max(arr[i - 1][j], arr[i - 1][j - g[i - 1]] + p[i - 1]);
}
}
}
fout << arr[N][G] << endl;
return 0;
}