Pagini recente » Cod sursa (job #653719) | Cod sursa (job #639037) | Cod sursa (job #1375616) | Cod sursa (job #1957141) | Cod sursa (job #1916851)
#include <fstream>
using namespace std;
int n, w, c[1002], e[1002], op[10002], sol, ma;
int main()
{
ifstream fin("energii.in");
ofstream fout("energii.out");
fin >> n >> w;
for(int i = 1; i <= n; ++i)
fin >> e[i] >> c[i];
sol = 999999;
ma = 999999;
for(int i = 1; i <= n; ++i)
for(int j = 0; j <= w; ++j)
if(op[j + c[i]] < op[j] + e[i])
{
op[j+c[i]] = op[j] + e[i];
if(j+c[i] < ma && op[j+c[i]] <= sol && op[j+c[i]] >= w)
{
ma = j+c[i];
sol = op[j+c[i]];
}
}
if(sol == 999999) fout << -1;
else fout << ma;
return 0;
}