Pagini recente » Cod sursa (job #1550079) | Autentificare | Cod sursa (job #877261) | Cod sursa (job #2841668) | Cod sursa (job #152887)
Cod sursa(job #152887)
#include <stdio.h>
# define N 1128
#define M 50000
int rez[N],v[N];
char val[M];
int main()
{
int r=2,n,i,j;
int inj,gata,aux;
freopen("economie.in", "r",stdin);
freopen("economie.out", "w",stdout);
scanf("%d", &n);
for(i=1;i<=n;++i)
scanf("%d", &v[i]);
inj=n;
while(inj>1)
{
inj/=2;
do{
gata=1;
for(i=1;i<=n-inj;i++)
if(v[i]>v[i+inj])
{
aux=v[i];
v[i]=v[i+inj];
v[i+inj]=aux;
gata=0;
}
}
while(!gata);
}
//for(i=1;i<=n;++i)
// printf("%d\n", v[i]);
//printf("\n");
rez[1]=v[1];
for(i=v[1];i<M;i+=v[1])
val[i]=1;
for(i=2;i<=n;++i)
{
//printf("\n");
if(!val[v[i]])
{ for(j=v[i];j<=M;j+=v[i])
val[j]=1;
rez[r]=v[i];
++r;
}
//for(j=1;j<=16;++j)
// if(val[j]) printf("%d ", j);
}
printf("%d\n", r-1);
for(i=1;i<r;++i)
printf("%d\n", rez[i]);
return 0;
}