Pagini recente » Cod sursa (job #3257647) | Cod sursa (job #832386) | Cod sursa (job #2169044) | Cod sursa (job #499808) | Cod sursa (job #2455125)
#include <iostream>
#include <fstream>
#define GMAX 10006
#define NMAX 5006
using namespace std;
int n,g;
long long int vm[GMAX];
struct obiect{
long long int valoare, greutate;
}obiecte[NMAX];
void yee()
{
for(int i=0;i<n;i++)
{
for(int j=g;j>=0;j--)
{
int ind = j-obiecte[i].greutate;
if(ind >= 0)
{
vm[j] = max(vm[j],vm[ind] + obiecte[i].valoare);
}
}
}
}
int main()
{
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
fin>>n>>g;
for(int i=0;i<n;i++)
{
obiect o;
fin>>o.greutate>>o.valoare;
obiecte[i]=o;
}
yee();
fout<<vm[g]<<" ";
return 0;
}