Pagini recente » Cod sursa (job #33285) | Cod sursa (job #2179230) | Cod sursa (job #1003933) | Cod sursa (job #2752841) | Cod sursa (job #562690)
Cod sursa(job #562690)
#include<fstream.h>
ifstream f("energii.in");
ofstream g("energii.out");
int sol[200],s,min,min1;int i,nr,w,e[200],c[200];
int back(int k,int cost)
{
if(s==w)
{
if(cost<min) min=cost;
}
else{
while(s<w)
{
s=s+e[k];
cost+=c[k];
back(k+1,cost);
}
}}
main()
{
f>>nr;
f>>w;
int ok=1;
for(i=1;i<=nr;i++)
{
f>>e[i];
f>>c[i];
s+=e[i];
if(e[i]==w) {ok=0;min1=c[i];}
min+=c[i];
}
if(s<w) g<<"-1";
if(ok==0) {
for(i=1;i<=nr;i++)
if((e[i]==w)&&(c[i]<min1))min1=c[i];
g<<min1;
}
else
{back(1,0);
g<<min;}
}