Pagini recente » Cod sursa (job #9738) | Cod sursa (job #1038079) | Cod sursa (job #2671239) | Cod sursa (job #1782232) | Cod sursa (job #132351)
Cod sursa(job #132351)
#include<fstream.h>
int x[102][3],a[101],i,j,k,l,m,n,w,g1,min,s,min1;
int main()
{ifstream f("energii.in");
ofstream g("energii.out");
f>>g1>>w;
min=32000;
for(i=1;i<=g1;i++)
{f>>x[i][1]>>x[i][2];
if((x[i][1]>=w)&&(x[i][2]<min))
{min=x[i][2];}}
for(i=1;i<g1;i++)
for(j=i;j<=g1;j++)
if(x[i][1]>x[j][1])
{k=x[i][1];
x[i][1]=x[j][1];
x[j][1]=k;
k=x[i][2];
x[i][2]=x[j][2];
x[j][2]=k;
}
m=2;
a[1]=1;
a[2]=1;
while(x[m][1]<w)
{s=0;min1=0;
for(i=1;i<=m;i++)
{
if(a[i]>1)
{a[i+1]++;a[i]=0;
if(i>m-1)
m++;}
if(a[i]!=0)
{s+=x[i][1];min1+=x[i][2];}
}
if((s>w)&&(min1<min))
min=min1;
a[1]++;
}
g<<min;
f.close();
g.close();
return 0;
}