Pagini recente » Cod sursa (job #389538) | Cod sursa (job #312446) | Cod sursa (job #254986) | Cod sursa (job #246873) | Cod sursa (job #110456)
Cod sursa(job #110456)
#include <iostream>
#include <algorithm>
const int maxn = 1001;
const int maxval = 50005;
FILE *in = fopen("economie.in","r"), *out = fopen("economie.out","w");
int n;
int a[maxn];
int fol[maxval];
int answ[maxn];
int main()
{
fscanf(in, "%d", &n);
for ( int i = 1; i <= n; ++i )
fscanf(in, "%d", &a[i]);
std::sort(a+1, a+n+1);
int cnt = 0;
for ( int i = 1; i <= n; ++i )
{
if ( !fol[ a[i] ] && !fol[ a[i] - answ[cnt] ] )
{
answ[++cnt] = a[i];
fol[ a[i] ] = 1;
for ( int j = 2; a[i]*j <= maxval; ++j )
{
int k = a[i] * j;
fol[k] = 1;
}
}
}
fprintf(out, "%d\n", cnt);
for ( int i = 1; i <= cnt; ++i )
fprintf(out, "%d\n", answ[i]);
return 0;
}