Cod sursa(job #1542587)

Utilizator CnemusTudor Luca Ioan Cnemus Data 5 decembrie 2015 14:57:33
Problema Energii Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.87 kb
#include <iostream>
#include <fstream>
using namespace std;

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

int n,w,e[10001],c[10001],cmin,a[10001],s;

int main()
{
    in>>n>>w;
    for(int i=1;i<=n;i++){
        in>>e[i];
        in>>c[i];
    }

    for(int i=1;i<=w;i++)
        a[i]=100010;
    a[0]=0;
    for(int i=1;i<=n;i++){
        for(int j=w+e[i]-1;j>=e[i];j--){
            if(a[j-e[i]]!=-1){
                if(j>=w){
                    if(a[j-e[i]]+c[i] < a[w])
                        a[w]=a[j-e[i]]+c[i];
                    else;
                }
                else {
                    if(a[j-e[i]]+c[i]<a[j])
                        a[j]=a[j-e[i]]+c[i];
                }
            }
        }
    }

    //for(int i=0;i<=w;i++)
        //out<<a[i]<<' ';
    //out<<'\n';

    out<<a[w];

    return 0;
}