Cod sursa(job #1412503)

Utilizator MailatMailat Radu Mailat Data 1 aprilie 2015 12:29:27
Problema Energii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <fstream>
#include <algorithm>
#define MAX 1001
using namespace std;

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

int V[MAX][MAX];
int C[MAX], P[MAX];
int main()
{
    int n, g;

    fin >> n >> g;

    for(int i = 1; i <= n;i++)
    {
        fin >> P[i] >> C[i];
    }
    fin.close();
    for(int i = 0; i <= g; i++)
    {
        V[0][i] = C[1];
    }
    for(int i = 1; i <= n; i ++)
    {
        for(int j = 1; j <= g; j++)
        {
            if(P[i] >= j)
            {
                V[i][j] = min(C[i], V[i-1][j]);
            }
            else
            {
                V[i][j] = C[i] + V[i-1][j-C[j]];
            }
        }
    }
    fout << V[n][g];
    fout.close();

    return 0;
}