Pagini recente » Cod sursa (job #1478786) | Cod sursa (job #1926661) | Cod sursa (job #589153) | Cod sursa (job #2392926) | Cod sursa (job #158762)
Cod sursa(job #158762)
#include<stdio.h>
#include<stdlib.h>
long long x[1001];long long y[1001],min;
long long v[1001],l,t;
int n;
int main()
{ int i,j,s,aux,p;
FILE *f=fopen("economie.in","r");
fscanf(f,"%d",&n);
for (i=1;i<=n;i++)
fscanf(f,"%lld",&x[i]);
fclose(f);
p=n;
do
{ for (i=1,s=0;i<p;i++)
if (x[i]>x[i+1])
{ t=x[i];x[i]=x[i+1];x[i+1]=t;s=i; }
p=s;
}
while (p>1);
if (x[1]==1)
{ min=1;y[1]=1; }
else
{
y[1]=v[1]=x[1];
min=1;l=1;
for (i=2;i<=n;i++)
{ for (j=1,s=0;j<=l&&!s;j++)
if (x[i]%v[j]==0) s=1;
if (!s)
{ y[++min]=x[i];
v[++l]=x[i];
aux=l-1;
for (j=1;j<=aux;j++)
v[++l]=v[j]+x[i];
}
}
}
FILE *g=fopen("economie.out","w");
fprintf(g,"%lld\n",min);
for (i=1;i<=min;i++)
fprintf(g,"%lld\n",y[i]);
fclose(g);
return 0;
}