Cod sursa(job #2714794)
Utilizator | Data | 2 martie 2021 15:19:28 | |
---|---|---|---|
Problema | Problema rucsacului | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.47 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin ("rucsac.in");
ofstream fout ("rucsac.out");
int n,g,d1[10005],d2[10005];
int main()
{
fin >>n >> g;
int w,p;
for(int i=1;i<=n;++i)
{
fin >> w >> p;
for(int j=w;j<=g;++j)
{
d2[j]=max(d1[j-w]+p,d1[j]);
}
for(int j=0;j<=g;++j)
{
d1[j]=d2[j];
}
}
fout << d2[g];
return 0;
}