Pagini recente » Cod sursa (job #2536920) | Cod sursa (job #1117891) | Cod sursa (job #528159) | Cod sursa (job #1919610) | Cod sursa (job #840693)
Cod sursa(job #840693)
#include<fstream>
using namespace std;
ifstream f("energii.in"); ofstream g("energii.out");
const int inf=1<<30;
int n,W,eg,cg,a[5003];
int main()
{ f>>n>>W;
for(int i=1; i<=W; ++i) a[i]=inf;
for(int i=1; i<=n; ++i)
{ f>>eg>>cg;
for(int j=W; j>=0; --j)
if(a[j] != inf)
{
if(W <= j+eg && a[j]+cg < a[W]) a[W]=a[j]+cg;
if(j+eg < W && a[j]+cg<a[j+eg]) a[j+eg]=a[j]+cg;
}
}
if(a[W]==inf) g<<"-1\n"; else g<<a[W]<<'\n';
return 0;
}