Cod sursa(job #1680936)
| Utilizator | Data | 9 aprilie 2016 10:43:57 | |
|---|---|---|---|
| Problema | Problema rucsacului | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.5 kb |
#include <fstream>
#define MXG 10001
#define MXN 5001
using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
long V[MXG];
int n,gr;
int w[MXN],p[MXN];
/*int max1 (int i, int j)
{
if (i>j)
return i;
return j;
}*/
int rucsac()
{
int i,j;
for (i=1;i<=n;i++)
for(j=gr;j>=w[i];j--)
V[j]=max(V[j],V[j-w[i]]+p[i]);
return V[gr];
}
int main()
{
f >> n >> gr;
for (int i=1; i<=n; ++i)
f >> w[i] >> p[i];
g << rucsac();
return 0;
}
