Cod sursa(job #1981146)

Utilizator MihaelaCismaruMihaela Cismaru MihaelaCismaru Data 14 mai 2017 22:36:27
Problema Energii Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include<fstream>
using namespace std;
ifstream in("energii.in");
ofstream out("energii.out");
int n,m,i,j,minim,ok,e,c,dp[15001];
int main(){
    in >> n >> m;
    minim =1000000000;
    for( i = 1; i <= 10000;i++){
        dp[i] = 100000000;
    }
    for( i = 1; i <= n; i ++ ){
        in >> e >> c;
        if( e < m ){
            for( j = 10000; j >= e; j -- ){
                dp[j] = min( dp[j] , dp[j-e] + c );
                if( ok == 0 && j >=m ){
                    minim = dp[j];
                    ok = 1;
                }
                if( minim > dp[j] && j >=m ){
                    minim = dp[j];
                }
            }
        }
        else{
            if( minim > c ){
                    minim = c ;
            }
        }
    }
    out << minim;
    return 0;
}