Pagini recente » Cod sursa (job #83374) | Cod sursa (job #760151) | Cod sursa (job #1714799) | Cod sursa (job #2232097) | Cod sursa (job #404280)
Cod sursa(job #404280)
#include<stdio.h>
#include<stdlib.h>
int i,a[1002],ok[50002],n,k,j,aux,l,v[1002];
int cmp(const void *a,const void *b)
{
return (*(int*)a-*(int*)b);
}
int main()
{
freopen("economie.in","r",stdin);
freopen("economie.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
qsort(a+1,n,sizeof(int),cmp);
for(i=1;i<=n;i++)
if(!ok[a[i]])
{
k++;
v[k]=a[i];
for(j=2;j<=a[n];j++)
if(ok[j])
{
aux=(a[n]-j)/a[i];
for(l=1;l<=aux;l++)
ok[l*a[i]+j]=1;
}
aux=a[n]/a[i];
for(j=1;j<=aux;j++)
ok[j*a[i]]=1;
}
printf("%d\n",k);
for(i=1;i<=k;i++)
printf("%d\n",v[i]);
return 0;
}