Cod sursa(job #144555)

Utilizator andrei-alphaAndrei-Bogdan Antonescu andrei-alpha Data 27 februarie 2008 19:34:21
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.38 kb
#include <stdio.h>
#define N 2000000
int v[N]={0};
int main()
{
int n,nr=0,i,j;
freopen("ciur.in", "r",stdin);
freopen("ciur.out", "w",stdout);
scanf("%d", &n);
	for(i=2;i<=n;++i)
		for(j=2*i;j<=n;j+=i)
            v[j]=1;
for(i=2;i<=n;++i)
 if(v[i]==0) nr++;
printf("%d\n",nr);
 
 for(i=2;i<=n;++i)
 if(v[i]==0 && nr<1000) printf("%d ", i); 
 else nr--; 

	 
return 0;
}