Cod sursa(job #2123641)

Utilizator eduardvintilaVintila Eduard eduardvintila Data 6 februarie 2018 14:33:25
Problema Energii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <iostream>
#include <fstream>

const int INF=10000000;

using namespace std;

ifstream f("energii.in");
ofstream g("energii.out");

int dp[1005][5005],w[1005],v[1005];

int main()
{
    int n,x,y,S,i,j;
    f>>n>>S;
    for (i=1;i<=n;i++)
    {
        f>>v[i]>>w[i];
    }
    for (j=0;j<=S;j++)
            dp[0][j]=INF;
        for (i=1;i<=n;i++)
        {
            for (j=1;j<=S;j++)
            {
                if (v[i]<=j)
                    dp[i][j]=min(dp[i-1][j],dp[i-1][j-v[i]]+w[i]);
                else dp[i][j]=min(dp[i-1][j],w[i]);
            }
        }
    if (dp[n][S]!=INF)
        g<<dp[n][S];
    else g<<-1;
    return 0;
}