Pagini recente » Cod sursa (job #2829924) | Cod sursa (job #392918) | Cod sursa (job #295212) | Cod sursa (job #1413766) | Cod sursa (job #799093)
Cod sursa(job #799093)
#include<stdio.h>
#include<algorithm>
using namespace std;
char ok[50001];
int b[1001];
long n,i,j;
int Maxim;
long ans,sol[1001];
int main(){
freopen("economie.in","r",stdin);
freopen("economie.out","w",stdout);
scanf("%d",&n);
for (i=1;i<=n;i++){
scanf("%d",&b[i]);
if (b[i]>Maxim)
Maxim=b[i];
}
sort(b+1,b+n+1);
for (i=1;i<=n;i++){
if (ok[b[i]]==0){
++ans;
sol[ans]=b[i];
for (j=b[i];j<=Maxim;j+=b[i])
ok[j]=1;
for (j=1;j<=Maxim;++j)
if ( ok[j]==1 && j+b[i]<=Maxim)
ok[j+b[i]]=1;
}
}
printf("%ld\n",ans);
for (i=1;i<=ans;i++)
printf("%ld\n",sol[i]);
return 0;
}