Pagini recente » Cod sursa (job #2122825) | Cod sursa (job #79900) | Cod sursa (job #2550075) | Cod sursa (job #532515) | Cod sursa (job #928171)
Cod sursa(job #928171)
#include <fstream>
using namespace std;
ifstream in ("energii.in");
ofstream out ("energii.out");
const int E=10005;
long long v[E];
int main()
{
long long g,w,eg,i,cons,sum=0,j,min=999999999;
in>>g>>w;
for(i=1; i<=g; i++)
{
in>>eg>>cons;
if(cons>min)
continue;
sum+=eg;
for(j=w; j>0; j--)
if(v[j]!=0 && j+eg<=E &&(v[j+eg]>v[j]+cons || v[j+eg]==0))
{
v[j+eg]=v[j]+cons;
if((j+eg)>=w && v[j+eg]<min)
min=v[j+eg];
}
if(v[eg]>cons || v[eg]==0)
v[eg]=cons;
if(eg>=w && v[eg]<min)
min=v[eg];
}
if(min==999999999)
{
out<<"-1";
return 0;
}
out<<min;
return 0;
}