Cod sursa(job #149440)

Utilizator me_andyAvramescu Andrei me_andy Data 5 martie 2008 18:43:05
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include<fstream.h>

 ifstream f("ciur.in");
 ofstream g("ciur.out");
 char a[2000001];
 long cont=0,i,j,n;

int main()
{
 f>>n;
 i=2;
 while(i<=n/2)
 {
  while(a[i]!=0)
   i++;
  for(j=2*i;j<=n;j+=i)
     a[j]=1;
  i++;
 }
 for(i=n;i>=2;i--)
 {
  if(a[i]==0)
   cont++;
  if(cont==1000)
   break;
 }
 g<<cont<<"\n";
 for(j=i+1;j<=n;j++)
  if(a[j]==0)
   g<<j<<" ";

 f.close();
 g.close();
 return 0;

}