Cod sursa(job #188913)

Utilizator firewizardLucian Dobre firewizard Data 10 mai 2008 20:56:18
Problema Economie Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <stdio.h>
#include <algorithm>
using namespace std;
long v[50000],ind[50000],p[50000];
long n,i,j,q,m;
int main()
{
    freopen ("economie.in","r",stdin);
    freopen ("economie.out","w",stdout);
    scanf("%ld\n",&n);
    for (i=1;i<=n;++i){
        scanf("%ld",&v[i]);
        if(v[i]>m)m=v[i];
        }
    sort(v+1,v+n+1);
    for (i=1;i<=n;++i){
        if (ind[i]==0){
           p[++q]=v[i];
           ind[i]=1;
           for (j=2;j*v[i]<=m;++j)
               ind[j*v[i]]=1;
           }
        }
    printf("%ld\n",q);
    for(i=1;i<=q;++i)printf("%ld\n",p[i]);
        
    return 0;
}