Cod sursa(job #1174314)
| Utilizator | Data | 22 aprilie 2014 15:28:46 | |
|---|---|---|---|
| Problema | Problema rucsacului | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.48 kb |
# include <fstream>
# include <algorithm>
using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
int i,j,n,G;
int P[5005],gr[5005],a[10005],b[10005];
int main ()
{
f>>n>>G;
for (i=1; i<=n; ++i)
f>>gr[i]>>P[i];
for (i=1; i<=n; ++i)
{
for (j=0; j<=G; ++j)
{
b[j]=a[j];
if (gr[i]<=j) b[j]=max(b[j],a[j-gr[i]]+P[i]);
}
swap(a,b);
}
g<<a[G]<<"\n";
return 0;
}
