Cod sursa(job #3256709)

Utilizator Tudor28Ceclan Tudor Tudor28 Data 15 noiembrie 2024 19:59:10
Problema Energii Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <iostream>
#include <fstream>
#include <string.h>
#include <vector>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
int dp[5001][10001];
const int oo = 0x3f3f3f3f;

int main()
{
    int g, w;
    fin >> g >> w;
    memset(dp, oo, sizeof(dp));
    dp[0][0] = 0;
    for (int i = 1; i <= g; i++)
    {
        int eg, cg;
        fin >> eg >> cg;
        for (int j = 10001; j >= 0; j--)
        {
            if (j >= eg)
            {
                dp[i][j] = min(dp[i - 1][j], dp[i - 1][j - eg] + cg);
            }
            else
            {
                dp[i][j] = dp[i - 1][j];
            }
        }
    }

    fout << dp[g][w];

    return 0;
}