Cod sursa(job #145290)

Utilizator MciprianMMciprianM MciprianM Data 28 februarie 2008 18:09:09
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
#include<fstream>
using namespace std;
char a[2000005];
int N, cates,i,j;
int main(){
  ifstream f("ciur.in");
  f>>N;
  f.close();
  a[0]=1;
  a[1]=1;
  cates=1;
  for(i=3; i*i<=N;i++)
    if(a[i]==0){
      cates++;
      for(j=i*i;j<=N;j+=(i<<1))
	a[j]=1;
    }
  ofstream g("ciur.out");
  g<<cates<<'\n';
  cates=1000;
  for(i=2;i<=N&&cates;i++)
    if(!a[i]&&(i&1)){
      g<<i<<' ';
      cates--;
    }
  g<<'\n';
  g.close();
  return 0;
}