Cod sursa(job #2373592)
Utilizator | Data | 7 martie 2019 14:27:25 | |
---|---|---|---|
Problema | Problema rucsacului | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.45 kb |
#include <fstream>
using namespace std;
ifstream in("rucsac.in");
ofstream out("rucsac.out");
int n,i,j,gmax,g[5001],val[5001],sol[10001];
int main()
{
in>>n>>gmax;
for (i=1;i<=n;++i)
{
in>>g[i]>>val[i];
}
for (i=1;i<=n;++i)
{
for (j=gmax;j>=g[i];--j)
{
if (sol[j] < val[i] + sol[j-g[i]])
sol[j] = val[i] + sol[j-g[i]];
}
}
out<<sol[gmax]<<"\n";
}