Pagini recente » Cod sursa (job #3228349) | Cod sursa (job #2716965) | Cod sursa (job #3287135) | Cod sursa (job #1777742) | Cod sursa (job #2650442)
#include <bits/stdc++.h>
using namespace std;
ifstream in("energii.in");
ofstream out("energii.out");
int costs[5005];
int main()
{
for(int i = 0; i < 5005; i++) costs[i] = -1;
int n, w; in >> n >> w;
costs[0] = 0;
int minim = 1000000000;
for(int i = 0; i < n; i++)
{
int e, c; in >> e >> c;
for(int last = w-1; last >= 0; last--)
{
if(costs[last] != -1)
{
if(last + e >= w)
minim = min(minim, costs[last] + c);
else
{
if(costs[last + e] == -1) costs[last + e] = costs[last] + c;
costs[last + e] = min(costs[last + e], costs[last] + c);
}
}
}
}
if(minim == 1000000000) minim = -1;
out << minim;
}