Cod sursa(job #2512001)

Utilizator SochuDarabaneanu Liviu Eugen Sochu Data 20 decembrie 2019 12:59:56
Problema Energii Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <bits/stdc++.h>
#define WMAX 5005

using namespace std;

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

short G , W , e , c;
int rucsac[WMAX];

int main()
{
    short i , j;

    f >> G;
    f >> W;

    fill(rucsac + 1 , rucsac + WMAX + 1 , 999999999);

    for(i = 1 ; i <= G ; i++)
    {
        f >> e >> c;

        for(j = WMAX - e ; j >= 0 ; j--)
            rucsac[j] = min(rucsac[j] , rucsac[j - e] + c);
    }

    int ans = 9999999;

    for(j = W ; j <= WMAX - 5; j++)
    {
        if(rucsac[j])
            ans = min(ans , rucsac[j]);
    }

    g << ans;

    return 0;
}