Cod sursa(job #2512004)

Utilizator SochuDarabaneanu Liviu Eugen Sochu Data 20 decembrie 2019 13:03:10
Problema Energii Scor 50
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.62 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 , 999999999);

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

        for(j = WMAX ; j >= e ; 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;
}