Cod sursa(job #149229)

Utilizator mariaciPopa Marius Ionut mariaci Data 5 martie 2008 14:17:14
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include<stdio.h>
int ciur[2000005];
long long n;
int main()
{ freopen("ciur.in","r",stdin);
  freopen("ciur.out","w",stdout);
  scanf("%lld",&n);
  long long i,j,nc=0;
  for(i=2;i<=n;i++)
     ciur[i]=1;
  for(i=2;i<=n;i++)
     { if(ciur[i]==1)
	 { for(j=i+i;j<=n;j+=i)
	     ciur[j]=0;
	   nc++;
	 }
       if(nc==1000) break;
     }
  printf("%lld\n",nc);
  for(i=2;i<=n;i++)
     if(ciur[i]==1) printf("%lld ",i);
  printf("\n");
  return 0;
}