Pagini recente » Cod sursa (job #1913573) | Cod sursa (job #705448)
Cod sursa(job #705448)
#include<iostream>
#include<fstream>
using namespace std;
int e[1001],c[1001],cmin[2][5001];
int minim(int a, int b)
{
if(a<=b)
return a;
return b;
}
int main ()
{
int n,i,s,l,emin;
ifstream f("energii.in");
ofstream g("energii.out");
f>>n>>emin;
for(i=1;i<=n;i++)
f>>e[i]>>c[i];
f.close();
for(i=0;i<=emin;i++) {
cmin[0][i]=2000000000;
cmin[1][i]=2000000000;
}
l=1;
for(i=1;i<=n;i++,l=1-l)
for(s=1;s<=emin;s++)
if(s<=e[i])
cmin[l][s]=minim(cmin[1-l][s],c[i]);
else cmin[l][s]=minim(cmin[1-l][s],cmin[1-l][s-e[i]]+c[i]);
if(cmin[1-l][emin]==2000000000)
g<<"-1";
else g<<cmin[1-l][emin];
g.close();
return 0;
}