Cod sursa(job #244837)

Utilizator MciprianMMciprianM MciprianM Data 16 ianuarie 2009 06:47:44
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.42 kb
#include<fstream>  
using namespace std;  
bool a[2000001];  

int main(){  
   int N, cates,i,j;  
  ifstream f("ciur.in");  
  f>>N;  
  f.close();  
  for(i=3; i*i<=N;i++)  
    if(!a[i]){  
      for(j=i*i;j<=N;j+=(i<<1))  
        a[j]=1;  
    }  
  ofstream g("ciur.out");  
  cates=1;  
  for(i=3;i<=N;i+=2)  
    if(!a[i])  
      ++cates;  
  g<<cates<<'\n';  
  g.close();  
  return 0;  
}