Pagini recente » Cod sursa (job #1818581) | Cod sursa (job #2698568) | Cod sursa (job #1344498) | Cod sursa (job #92890) | Cod sursa (job #1446521)
#include <fstream>
using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
int n, w;
int i, j, maxim;
int a[10001];
struct en
{
int cant, cost;
}b[5001];
int main()
{
f >> n >> w;
for (i = 1; i <= n; i++)
f >> b[i].cant >> b[i].cost;
for (i = 1; i <= n; i++)
for (j = w - b[i].cant; j >= 0; j--)
if (a[j+b[i].cant] < a[j] + b[i].cost)
{
a[j+b[i].cant] = a[j] + b[i].cost;
if (maxim < a[j+b[i].cant])
maxim = a[j+b[i].cant];
}
g << maxim;
}