Cod sursa(job #2208372)

Utilizator testsursaSurseTest testsursa Data 29 mai 2018 14:01:20
Problema Energii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("energii.in");
ofstream go("energii.out");

const int INF=1<<30;

int m[1005][3],i,j,g,w,dp[2*5005];
int main()
{
    f>>g>>w;
    for(i=1;i<=g;i++)
    {
        f>>m[i][1];
        f>>m[i][2];
    }
    for(i=1;i<=2*w;i++)
        dp[i]=INF;
    for(i=1;i<=g;i++)
        for(j=2*w;j>=0;j--)
    {
        if(m[i][1]<=j)
            dp[j]=min(dp[j],dp[j-m[i][1]]+m[i][2]);
    }

    int minn=INF;
    for(int i=w;i<=2*w;i++)
        if(dp[i]<minn)
            minn=dp[i];

    if(minn==INF)
        go<<-1;
    else go<<minn;

return 0;
}