Pagini recente » Cod sursa (job #1640342) | Cod sursa (job #1628528) | Cod sursa (job #2345864) | Cod sursa (job #1085495) | Cod sursa (job #880857)
Cod sursa(job #880857)
#include <fstream>
#include <cstring>
using namespace std;
struct rucsac {
int g, v;
} o;
long int g[10005], n, G;
int main ()
{
ifstream fin ("rucsac.in");
fin >> n >> G;
memset (g, -1, sizeof(g));
g[0] = 0;
for (int i = 0; i < n; ++i)
{
fin >> o.g >> o.v;
for (int j = G - o.g; j >= 0; --j)
if (g[j] != -1 && g[j+o.g] < g[j] + o.v)
g[j+o.g] = g[j] + o.v;
}
fin.close ();
int aux = G;
while (g[aux] == -1)
aux--;
ofstream fout ("rucsac.out");
fout << g[aux];
fout.close ();
return 0;
}