Cod sursa(job #237268)

Utilizator ConsstantinTabacu Raul Consstantin Data 29 decembrie 2008 13:51:05
Problema Economie Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.98 kb
#include<stdio.h>
#include<algorithm>

int a[1001],sol[1000],i,j,k,l,m,n,max,nr;
char  x[50001];
int main(){
FILE *f=fopen("economie.in","r");
FILE *g=fopen("economie.out","w");
fscanf(f,"%d",&n);
for(i=1;i<=n;i++)
        {fscanf(f,"%d",&a[i]);
        if(a[i]==1){
                fprintf(g,"%d\n%d",1,1);
                fclose(f);
                fclose(g);
                return 0;}
        if(a[i]>max)
                max=a[i];}
for(i=1;i<=n;i++)
                {for(j=1;j<=max;j++)
                        if(j%a[i]==0&&j!=a[i])
                                x[j]=1;
                        else
                        if(x[j])
                                for(l=j;l<=max;l+=a[i])
                                        x[l]=1;
                }

for(i=1;i<=n;i++)
        if(x[a[i]]==0)
                nr++;
fprintf(g,"%d\n",nr);
for(i=1;i<=n;i++)
        if(x[a[i]]==0)
                fprintf(g,"%d\n",a[i]);
fclose(f);
fclose(g);
return 0;}