Pagini recente » Cod sursa (job #290575) | Cod sursa (job #2211662) | Cod sursa (job #3186322) | Cod sursa (job #2366553) | Cod sursa (job #1507822)
#include <iostream>
#include <fstream>
#define NMAX 1003
#define GMAX 5001
using namespace std;
ifstream in("energii.in");
ofstream out("energii.out");
int n,c,g[NMAX],p[NMAX],d[NMAX][GMAX];
int main()
{
in >> n >> c;
for(int i=1;i<=n;i++)
{
in >> g[i] >> p[i];
}
for(int i=1;i<=n;i++)
{
for(int k=1;k<=c;k++)
d[i][k]=-1;
}
for(int i=1;i<=n;i++)
{
for(int k=1;k<=c;k++)
{
d[i][k] = d[i-1][k];
if(k-g[i]>=0 && d[i][k]<d[i-1][k-g[i]] + p[i])
{
d[i][k] = d[i-1][k-g[i]] + p[i];
}
}
}
out << d[n][c];
return 0;
}