Cod sursa(job #16415)
Utilizator | Nae Mihai a7893 | Data | 12 februarie 2007 23:13:12 |
---|---|---|---|
Problema | Energii | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.47 kb |
#include<stdio.h>
int g,w,c[10001][10001],i,j;
struct energie{
int e,pr;
}a[10001];
int main()
{
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
scanf("%d%d",&g,&w);
for(i=1;i<=g;i++)
scanf("%d%d",&a[i].e,&a[i].pr);
for(i=1;i<=g;i++)
for(j=1;j<=w;j++)
if(a[i].e<=j)
if(a[i].pr+c[i-1][j-a[i].e]>c[i-1][j])
c[i][j]=a[i].pr+c[i-1][j-a[i].e];
else
c[i][j]=c[i-1][j];
i=g;j=w;
printf("%d\n",c[i][j]);
return 0;
}