Cod sursa(job #1545570)

Utilizator AlexVolatiluVoicu Alex AlexVolatilu Data 6 decembrie 2015 20:54:00
Problema Energii Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <stdio.h>
#define INF 1073741824
using namespace std;

int main()
{
    freopen("energii.in","r",stdin);
    freopen("energii.out","w",stdout);
    int g,w,i,j,a;
    int e[1002],c[1002],cmin[15005];
    scanf("%d%d",&g,&w);
    for(i=0;i<g;i++)
        scanf("%d%d",e+i,c+i);
    for(i=1;i<15005;i++)
        cmin[i]=INF;
    cmin[0]=0;
    for(i=0;i<g;i++)
    {
        for(j=w+e[i];j>=0;j--)
        {
            if(cmin[j-e[i]]!=INF)
            {
                a=cmin[j-e[i]]+c[i];
                if(j>=w&&a<cmin[w]) cmin[w]=a;
                else if(a<cmin[j]) cmin[j]=a;
            }
        }
    }
    printf("%d",cmin[w]);
    return 0;
}