Cod sursa(job #947344)
| Utilizator | Data | 7 mai 2013 10:49:02 | |
|---|---|---|---|
| Problema | Problema rucsacului | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.45 kb |
#include <cstdio>
using namespace std;
int n,m,i,j,Max,g,p,a[10100];
int main()
{
freopen("rucsac.in", "r", stdin);
freopen("rucsac.out", "w", stdout);
scanf("%d%d", &n, &m);
for (i=1; i<=n; i++)
{
scanf("%d%d", &g, &p);
for (j=m; j>=g; j--)
if(a[j]<a[j-g]+p)
a[j]=a[j-g]+p;
}
for (i=1; i<=m; i++)
if(a[i]>Max) Max=a[i];
printf("%d", Max);
return 0;
}
