Pagini recente » Cod sursa (job #133929) | Cod sursa (job #116660) | Cod sursa (job #511767) | Cod sursa (job #987645) | Cod sursa (job #2024327)
#include <fstream>
#define nmax 5005
#define gm 10005
using namespace std;
fstream f1("rucsac.in", ios::in);
fstream f2("rucsac.out", ios::out);
int n, gmax, gr[nmax], p[nmax], pmax[gm], rez;
void citire()
{
int i;
f1>>n>>gmax;
for(i=1; i<=n; i++)
f1>>gr[i]>>p[i];
}
void rucsac()
{
int i, g;
for(i=1; i<=n; i++)
for(g=gmax; g>=gr[i]; g--)
if(pmax[g]< pmax[g-gr[i]]+p[i])
{
pmax[g]=pmax[g-gr[i]]+p[i];
if(rez< pmax[g]) rez=pmax[g];
}
f2<<rez;
}
int main()
{
citire();
rucsac();
return 0;
}