Cod sursa(job #149054)

Utilizator dexter_dexMutascu Adrian - Dragos dexter_dex Data 5 martie 2008 11:35:33
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <stdio.h>

int n,i,j,m,w=1;

char prim[2000030];
int main()
{

FILE *f=fopen("ciur.in","r");
fscanf(f,"%d",&n);
fclose(f);

for (i=2;i<=n;i++)
     prim[i]=1;
for (i=2;i<=n;i++)
	if (prim[i]==1)
	{
	 m++;
	 for (j=2*i;j<=n;j=j+i)
	      prim[j]=0;
	}

FILE *g=fopen("ciur.out","w");
fprintf(g,"%d",m);
fclose(g);
if (n>1002)
    {while (w<=1000)
     i=n;
       if (prim[i]==1)

	 //g<<i<<" ";
	 fprintf(g,"%d ",i);

     i--;w++;}
else {for (i=2;i<=n;i++)
	 if (prim[i]==1)
	 //g<<i<<" ";
	 fprintf(g,"%d ",i);
	 }

fclose(g);

return 0;
}