Cod sursa(job #379286)

Utilizator eudanipEugenie Daniel Posdarascu eudanip Data 31 decembrie 2009 15:59:32
Problema Energii Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include<stdio.h>
#define INF 1000000001
int n,k,d[6001];
int main ()
{
    int i,can,cos,j;
    freopen("energii.in","r",stdin);
    freopen("energii.out","w",stdout);
    scanf("%d%d",&n,&k);
    for(i=1;i<=k;i++)
        d[i]=INF;
    for(i=1;i<=n;i++)
    {
        scanf("%d%d",&can,&cos);
        for(j=k-1;j>=0;j--)
            if(d[j+can]>d[j]+cos && j+can<=k)
                d[j+can]=d[j]+cos;
            else
                if(d[k]>d[j]+cos && j+can>k)
                    d[k]=d[j]+cos;
    }
    printf("%d\n",d[k]);
    return 0;
}