Cod sursa(job #646718)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 11 decembrie 2011 11:35:07
Problema Energii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include<cstdio>
#define N 1005
int n,m,i,j,e[N],c[N],s[5*N],r[5*N];
int main()
{freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
scanf("%d%d",&n,&m);
for(j=1;j<=n;j++)
      {scanf("%d%d",&e[j],&c[j]);
      for(i=1;i<=m;i++)
      if(i<=e[j])
            if(j==1) 
                    s[i]=c[j];
            else 
                    s[i]=r[i]<c[j]?r[i]:c[j];
      else
            if(j==1)
                    s[i]=N*N;
            else 
                    s[i]=(r[i]<c[j]+r[i-e[j]])?r[i]:(c[j]+r[i-e[j]]);
      for(i=1;i<=m;i++)
            r[i]=s[i];}
if(s[m]!=N*N)
      printf("%d",s[m]);
else
      printf("-1");
return 0;}