Cod sursa(job #1922504)

Utilizator ProCoderAgafitei Razvan ProCoder Data 10 martie 2017 17:43:56
Problema Energii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.78 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
int main()
{
    int n,m,mini,maxi,prez[1001],c[1001],e,co;
    f>>n>>m;
    mini=10000;
    for(int i=1;i<=n;i++)
    {
        f>>e>>co;
        for(int j=maxi;j>=0;j--)
        {
            if(prez[j]||j)
            {
                if(prez[j+e])
                    prez[j+e]=1;
                if(j+e<m)
                    maxi=max(maxi,j+e);
                c[j+e]=min(c[j+e],c[j]+co);
                if(!c[j+e])
                    c[j+e]=c[j]+co;
                if(j+e>=m)
                    mini=min(mini,c[j+e]);
            }
        }
    }
    if(mini==10000)
        mini=-1;
    if(m)
        mini=0;
    g<<mini;
    return 0;
}