Pagini recente » Cod sursa (job #2798522) | Cod sursa (job #655516) | Cod sursa (job #2242981) | Cod sursa (job #1164816) | Cod sursa (job #902757)
Cod sursa(job #902757)
#include <fstream>
#define min 100000000
using namespace std;
unsigned long g,w,v[1000],u[1000];
long long m=min;
void cautare(unsigned long i,unsigned long S,unsigned long C)
{
if(S>=w && C<m)
m=C;
else
for(;i<=g;i++)
cautare(i+1,S+v[i],C+u[i]);
}
int main()
{
unsigned long i;
fstream f("energii.in",ios::in);
fstream o("energii.out",ios::out);
f>>g>>w;
for(i=1;i<=g;i++)
f>>v[i]>>u[i];
for(i=1;i<=g;i++)
cautare(i,0,0);
if(m==min)
o<<-1;
else
o<<m;
f.close();
o.close();
return 0;
}